원본 : https://m.blog.naver.com/developer501/222491601872
해당 게시물의 2편으로 Java8 이후의 날짜 API 에 대한 내용을 포스팅 하기에 앞서, UTC TIME으로 세팅된 시간설정을 KST TIME으로 변경하는 방법에 대해서 알아보려고 한다
우선 아래 쿼리를 보자
STR_TO_DATE 와 CONVERT_TZ 부분이 눈에 띈다. STR_TO_DATE는 지난 포스팅(하단)을 참고하고, 이번 포스팅에서는 CONVERT_TZ 에 대해서 알아보려 한다
STR_TO_DATE에 대한 포스팅은 지난 포스팅을 참고 하자
1. Default Timezone 설정 확인
우선 현재 Default Timezone 설정을 확인 해 보아야 한다
아래의 쿼리를 날렸을 때, 결과 RESULT가 "UTC"로 나온다면 UTC 표준시로 DB 세팅이 되어있다는 이야기다
Default Timezone 설정 방법은 하단 포스팅을 참고하여 세팅 해 보자
2. CONVERT_TZ를 이용한 TIMEZONE 변환방법 1 (기본 타임존이 세팅되지 않은 경우)
기본적으로 타임존 옵셋으로 +-를 이용하여 원하는 시간만큼을 빼서 반환하고 싶은 경우, 아래와 같이 하면 된다
3. CONVERT_TZ를 이용한 TIMEZONE 변환방법 2 (TIMEZONE 이 세팅 된 경우)
1번에서 Default Timezone이 세팅된 경우라면, 아래와 같은 쿼리로로도 같은 결과를 얻을 수 있다
** 주의 할 점!
현재 TIME ZONE이 Asia/Seoul 인데, 3번과 같이 쿼리를 실행하면 현재 시간을 UTC로 보고 다시 -9시간을 하기 때문에 원하는 값이 나오지 않을 수 있다
꼭 현재 TIME ZONE을 우선 확인하고 작업하자