기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
CONVERT_TIMEZONE 함수
CONVERT_TIMEZONE 타임스탬프를 한 시간대에서 다른 시간대로 변환합니다. 이 함수는 일광 절약 시간에 맞춰 자동으로 조정됩니다.
구문
CONVERT_TIMEZONE ( ['source_timezone',] 'target_timezone', 'timestamp')
인수
- source_timezone
-
(옵션) 현재 타임스탬프의 시간대입니다. 기본값은 UTC입니다.
- target_timezone
-
새로운 타임스탬프의 시간대입니다.
- timestamp
-
타임스탬프 열 또는 묵시적으로 타임스탬프로 변환되는 표현식입니다.
반환 타입
TIMESTAMP
예시
다음 예제에서는 타임스탬프 값을 기본 UTC 시간대에서 로 변환합니다PST.
select convert_timezone('PST', '2008-08-21 07:23:54');
convert_timezone ------------------------ 2008-08-20 23:23:54
다음 예제에서는 LISTTIME 열의 타임스탬프 값을 기본 UTC 시간대에서 로 변환합니다PST. 타임스탬프는 일광 기간 내에 있지만 대상 시간대가 약어()로 지정되므로 표준 시간으로 변환됩니다PST.
select listtime, convert_timezone('PST', listtime) from listing where listid = 16;
listtime | convert_timezone --------------------+------------------- 2008-08-24 09:36:12 2008-08-24 01:36:12
다음 예제에서는 타임스탬프 LISTTIME 열을 기본 UTC 시간대에서 미국/태평양 시간대로 변환합니다. 대상 시간대가 시간대 이름을 사용하고 있고, 타임스탬프가 일광 절약 시간에 해당하기 때문에 함수가 일광 절약 시간을 반환합니다.
select listtime, convert_timezone('US/Pacific', listtime) from listing where listid = 16;
listtime | convert_timezone --------------------+--------------------- 2008-08-24 09:36:12 | 2008-08-24 02:36:12
다음 예제에서는 타임스탬프 문자열을에서 EST로 변환합니다PST.
select convert_timezone('EST', 'PST', '20080305 12:25:29');
convert_timezone ------------------- 2008-03-05 09:25:29
다음은 대상 시간대가 시간대 이름(America/New_York)을 사용하고 있고, 타임스탬프가 스탠다드 타임에 해당하기 때문에 타임스탬프를 미국 동부 스탠다드 타임으로 변환하는 예입니다.
select convert_timezone('America/New_York', '2013-02-01 08:00:00');
convert_timezone --------------------- 2013-02-01 03:00:00 (1 row)
다음은 대상 시간대가 시간대 이름(America/New_York)을 사용하고 있고, 타임스탬프가 일광 절약 시간에 해당하기 때문에 타임스탬프를 미국 동부 일광 절약 시간으로 변환하는 예입니다.
select convert_timezone('America/New_York', '2013-06-01 08:00:00');
convert_timezone --------------------- 2013-06-01 04:00:00 (1 row)
다음은 오프셋의 사용을 설명하는 예입니다.
SELECT CONVERT_TIMEZONE('GMT','NEWZONE +2','2014-05-17 12:00:00') as newzone_plus_2, CONVERT_TIMEZONE('GMT','NEWZONE-2:15','2014-05-17 12:00:00') as newzone_minus_2_15, CONVERT_TIMEZONE('GMT','America/Los_Angeles+2','2014-05-17 12:00:00') as la_plus_2, CONVERT_TIMEZONE('GMT','GMT+2','2014-05-17 12:00:00') as gmt_plus_2;
newzone_plus_2 | newzone_minus_2_15 | la_plus_2 | gmt_plus_2 ---------------------+---------------------+---------------------+--------------------- 2014-05-17 10:00:00 | 2014-05-17 14:15:00 | 2014-05-17 10:00:00 | 2014-05-17 10:00:00 (1 row)