timezone
값(기본값은 굵은 글꼴로 표시)
UTC , 시간대
구문
SET timezone { TO | = } [ time_zone | DEFAULT ] SET time zone [ time_zone | DEFAULT ]
설명
현재 세션의 시간대를 설정합니다. 시간대는 협정 세계시(UTC) 또는 시간대 이름의 오프셋이 될 수 있습니다.
참고
timezone
구성 파라미터는 클러스터 파라미터 그룹에서 설정할 수 없습니다. SET 명령을 사용하여 현재 세션의 시간대만 설정 가능합니다. 특정 데이터베이스 사용자가 실행하는 모든 세션의 시간대를 설정하려면 ALTER USER 명령을 사용해야 합니다. ALTER USER … SET TIMEZONE을 사용하면 현재 세션이 아닌 이후 모든 세션에 대한 시간대가 변경됩니다.
TO
또는 =
과 함께 SET timezone
(한 단어) 명령을 사용하여 시간대를 설정하면 time_zone 을 표준 시간대 이름, POSIX 스타일 형식 오프셋 또는 다음과 같이 ISO-8601 형식 오프셋을 사용합니다.
SET timezone { TO | = } time_zone
TO
또는 =
없이 SET time zone 명령어를 사용하여 시간대를 설정하면 다음과 같이 INTERVAL과 시간대 이름, POSIX 스타일 형식 오프셋 또는 ISO-8601 형식 오프셋을 사용하여 time_zone을 지정할 수 있습니다.
SET time zone time_zone
시간대 형식
Amazon Redshift는 다음 시간대 형식을 지원합니다.
-
시간대 이름
-
INTERVAL
-
POSIX-스타일 시간대 명세
-
ISO-8601 오프셋
PST나 PDT 같은 시간대 약어는 UTC의 고정 오프셋으로 정의되어 일광 절약 시간 규칙이 없기 때문에 SET 명령에서는 시간대 약어를 지원하지 않습니다.
시간대 형식에 대한 자세한 내용은 아래를 참조하십시오.
시간대 이름 – America/New_York와 같은 전체 시간대 이름입니다. 시간대의 전체 이름에는 일광 절약 규칙도 포함될 수 있습니다.
다음은 시간대 이름의 예입니다.
-
Etc/Greenwich
-
America/New_York
-
CST6CDT
-
GB
참고
EST, MST, NZ, UCT 등 다수의 시간대 이름 역시 약어입니다.
유효한 시간대 이름 목록을 보려면 다음 명령을 실행하십시오.
select pg_timezone_names();
INTERVAL - UTC로부터의 오프셋입니다. 예를 들어 PST는 -8:00 또는 -8시간입니다.
다음은 INTERVAL 시간대 오프셋의 예입니다.
-
-8:00
-
-8시간
-
30 분
POSIX 스타일 형식 – STDoffset 또는 STDoffsetDST 형식의 시간대 지정입니다. 여기서 STD는 시간대 약어이고, offset은 UTC에서 서쪽으로 시간 단위로 나타낸 숫자 오프셋이며, DST는 선택적 일광 절약 시간대 약어입니다. 일광 절약 시간은 지정한 오프셋보다 1시간 앞서는 것으로 가정합니다.
POSIX-스타일 시간대 형식은 Greenwich에서 서쪽으로 양의 오프셋을 사용하는 반면 ISO-8601 규약은 Greenwich에서 동쪽으로 양의 오프셋을 사용합니다.
다음은 POSIX-스타일 시간대의 예입니다.
-
PST8
-
PST8PDT
-
EST5
-
EST5EDT
참고
Amazon Redshift는 POSIX 스타일 시간대 사양의 유효성을 검사하지 않으므로 시간대를 잘못된 값으로 설정할 수 있습니다. 예를 들어 다음 명령을 시간대를 잘못된 값으로 설정하지만 오류를 반환하지 않습니다.
set timezone to ‘xxx36’;
ISO-8601 오프셋 – ±[hh]:[mm]
형식의 UTC 오프셋입니다.
다음은 ISO-8601 오프셋의 예입니다.
-
-8:00
-
+7:30
예시
다음은 현재 세션의 시간대를 New York으로 설정하는 예입니다.
set timezone = 'America/New_York';
다음은 현재 세션의 시간대를 UTC-8(PST)로 설정하는 예입니다.
set timezone to '-8:00';
다음은 INTERVAL을 사용하여 시간대를 PST로 설정하는 예입니다.
set timezone interval '-8 hours'
다음은 현재 세션의 시간대를 시스템 기본 시간대(UTC)로 재설정하는 예입니다.
set timezone to default;
데이터베이스 사용자의 시간대를 설정하려면 ALTER USER … SET 문을 사용하십시오. 다음은 sbuser의 시간대를 New York으로 설정하는 예입니다. 이 사용자에게는 이후 모든 세션에서도 새로운 값이 계속 적용됩니다.
ALTER USER dbuser SET timezone to 'America/New_York';