DB/MySQL 3

Spatial Query Index 최적화(공간 쿼리 최적화)

🤔 문제의식개발을 하다 보니 좌표를 사용하는 경우가 꽤 있었다.필자의 경우 대다수의 상황을 프론트가 지도를 연동하는 과정 속에 대부분 String으로 좌표값만 저장 후 전달해 주었던 것 같다.새로운 프로젝트에서 사용자 위치 기반으로 가게를 거리별로 페이징 해주어야하는 부분이 있었고, 직접 처리해보고자 하였다.String으로 처리하고자 하니 인덱싱이 되지 않는 문제가 있었다. 사용자의 위치를 기반으로 일정한 거리를 계산하고자 하니 풀 테이블 스캔이 필연적으로 발생하는 문제였다.→ 프로젝트 규모상 위도 경도를 일정 범위로 제한한 뒤에 다시 원형으로 거리를 측정하는 방식을 도입하는 것만으로도 충분했지만 더 좋은 정보가 없나 찾아보았고 Spatial Query라는 것을 알게 되었다.💡Spatial Query..

DB/MySQL 2025.08.31

[MySQL] DATE 자료형 정리

MySQL의 날짜 시간 타입 Mysql에는 시간에 대한 다양한 자료형이 있다. 대표적으로 TIMESTAMP , DATE , DATETIME 같은 것들이 있다. JAVA를 주로 사용하는 나를 기준으로 하자면 LocadDate -> DATE, LocalDateTime -> DATETIME 로 바뀌게 된다. 그렇다면 각자 무엇을 어떻게 나타내주는 것인지 알아보자.DATE 와 DATETIME주로 사용되는 자료형이다. 둘 다 타입명 자체에서 알 수 있듯이 날짜와 날짜+시간을 저장하기 위한 타입이다. DATE : 'YYYY-MM-DD' 포맷으로 표현되고, DATETIME : 'YYYY-MM-DD hh:mm:ss' 의 포맷으로 표현된다.이 때 구분자는 다른 구두점으로도 변경 가능하나 주의를 하며 변경해야한다.DAT..

DB/MySQL 2024.11.20

[MySQL] 날짜, 시간 표기 방식 DATE_FORMAT()

MySQL DATE_FORMAT 활용MySQL은 DATE, DATETIME, TIMESTAMP 같은 다양한 시간 자료형을 지원합니다. 하지만 SQL문으로 출력할 때 원하는 형식이 아닐 수 있습니다. 예를 들어, DATETIME 자료형에서 시간을 제외하고 출력하려면 어떻게 해야 할까요?이 글을 참고하면 문제를 해결하기 위해 DATE_FORMAT을 사용하는 것을 볼 수 있습니다. 이제 DATE_FORMAT을 사용하는 다양한 방법을 알아봅시다.지시자설명%a요일 이름 축약형 (일..토)%b월 이름 축약형 (1월..12월)%c월 숫자형 (0..12)%D날짜에 영어 접미사 추가 (0th, 1st, 2nd 등)%d날짜 숫자형 (00..31)%e날짜 숫자형 (0..31)%f마이크로초 (000000..999999)%H시..

DB/MySQL 2024.11.19