이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : B.5. posix 토토 결과 사양버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

B.5. posix토토 꽁 머니 사양

PostgreSQL에 따라 작성된 토토 꽁 머니 사양을 허용 할 수 있습니다posix표준의 규칙TZ환경 변수.posix토토 꽁 머니 사양 사양은 실제 시간대 이력의 복잡성을 다루기에 부적절하지만 때로는 사용해야 할 이유가 있습니다.

Posix 토토 꽁 머니 사양이 양식이 있습니다

std 오프셋 [ dst [ dstoffset ] [ , RUL ] ]

(가독성을 위해 필드 사이의 공간을 보여 주지만 실제로는 공간을 사용해서는 안됩니다.) 필드는 다음과 같습니다..

  • std표준 시간 동안 사용되는 영역 약어입니다.

  • 오프셋utc에서 영역의 표준 시간 오프셋입니다.

  • dst구역 약어는 일광 절약 시간에 사용됩니다. 이 필드와 다음 필드가 생략되면 영역은 일광 절약 규칙없이 고정 된 UTC 오프셋을 사용합니다.

  • dstoffsetUTC에서 일광 절약이 상쇄됩니다. 이 필드는 일반적으로 표준 시간보다 1 시간으로 기본값이므로 생략됩니다오프셋, 이것은 보통 옳은 것입니다.

  • RUL아래에 설명 된대로 일광 절약 시행 시점에 대한 규칙을 정의합니다.

이 구문에서 구역 약어는와 같은 문자열이 될 수 있습니다.EST또는 앵글 브래킷으로 둘러싸인 임의의 문자열. 여기에 주어진 구역 약어는 출력에만 사용되며 심지어 일부 타임 스탬프 출력 형식으로 만 사용됩니다.섹션 B.4.

오프셋 필드는 UTC와의 시간, 선택적으로 분과 초를 지정합니다. 그들은 형식을 가지고 있습니다HH[:mm[:SS]] 선택적으로 선행 기호가있는 (+또는-). 긍정적 인 부호는 구역에 사용됩니다West(이것은 다른 곳에서 사용 된 ISO-8601 표시 컨벤션과 반대입니다.PostgreSQL.) HH하나 또는 두 자리를 가질 수 있습니다;mmandSS(사용되는 경우) 두 개가 있어야합니다.

일광 절약 전환RUL형식이 있습니다

dstdate [ / dsttime ] , stddate [ / stdtime ]

(이전과 같이, 공백은 실제로 포함되지 않아야합니다.)dstdateanddsttime필드는 일광 절약 시간이 시작되는지 정의하는 동안stddateandstdtime표준 시간이 시작되는지 정의하십시오. (일부 경우, 특히 적도 남쪽의 구역에서는 전자가 후자보다 연말에있을 수 있습니다.) 날짜 필드에는 다음 중 하나가 있습니다..

n

평범한 정수는 일년의 하루를 나타내며, 0에서 364로, 또는 도약시 365로 계산됩니다.

Jn

이 형식으로n1에서 365까지 카운트하고 2 월 29 일은 존재하더라도 계산되지 않습니다. (따라서 2 월 29 일에 발생하는 전환은 이런 식으로 지정할 수 없었습니다. 그러나 2 월 이후의 며칠 동안 도약이든 아니든이 숫자는 일반적으로 고정 날짜의 전환에 대한 일반적인 integer 양식보다 더 유용합니다.).

Mm.n.d

이 양식은 같은 달과 같은 요일에 항상 발생하는 전환을 지정합니다.m달을 1에서 12로 식별합니다.n지정n'TH 평일의 발생으로 식별d. n는 1과 4 사이의 숫자 또는 5 또는 5의 숫자입니다. 이달 주중의 마지막 날의 마지막 사건 (네 번째 또는 다섯 번째 일 수 있음)을 의미합니다..d는 0과 6 사이의 숫자이며 0은 일요일을 나타냅니다. 예를 들어,M3.2.0평균"3 월 두 번째 일요일".

참고 :theM형식은 많은 일반적인 일광 절약 전환 법을 설명하기에 충분합니다. 그러나 이러한 변종 중 어느 것도 일광 절약법 법률 변경을 처리 할 수 ​​없으므로 실제로 지명 된 시간대 (Iana Time Zone 데이터베이스)에 저장된 과거 데이터는 과거 시간 스탬프를 올바르게 해석하려면 필요합니다..

전환 규칙의 시간 필드는 표지판을 포함 할 수 없다는 것을 제외하고는 앞에서 설명한 오프셋 필드와 동일한 형식을 갖습니다. 그들은 다른 시간으로의 변화가 발생하는 현재 현지 시간을 정의합니다.02 : 00 : 00.

일광 절약 약어가 주어 지지만 전환RUL필드가 생략 되었음,postgresql컨설팅하여 전환 시간을 결정하려는 시도posixrulesIana Time Zone 데이터베이스의 파일. 이 파일은 풀 타임 존 입력과 동일한 형식을 가지지 만 UTC 오프셋이 아닌 전환 타이밍 규칙 만 사용됩니다.US/Eastern파일, Posix 스타일 토토 꽁 머니 사양이 미국 일광 절약 규칙을 따릅니다. 필요한 경우 대체 하여이 동작을 조정할 수 있습니다.posixrules파일.

참고 :a 상담 시설posixrules파일은 Iana에 의해 더 이상 사용되지 않았으며 앞으로 사라질 것입니다. 이 기능의 버그는 사라지기 전에 수정되지 않을 가능성이 낮으며 2038 년 이후 DST 규칙을 날짜에 적용하지 못한다는 것입니다.

posixrules파일이없고, 폴백 동작은 규칙을 사용하는 것입니다M3.2.0, M11.1.0는 2020 년 현재 미국 실무에 해당합니다 (즉, 3 월 둘째 주 일요일에 봄이 앞으로 봄이 앞으로 돌아와서 11 월 첫 번째 일요일에 2시에 발생합니다..

예를 들어CET-1CEST, M3.5.0, M10.5.0/3파리에서 현재 (2020 년 기준) 현재 (2020 년 기준)를 설명합니다. 이 사양은 표준 시간에 약어가 있다고 말합니다.CET그리고 UTC의 1 시간 앞서 (동쪽); 일광 절약 시간은 약어가 있습니다Cest그리고 UTC보다 2 시간 앞서 있습니다. 일광 절약 시간은 3 월 2 일 오전 2시 CET에서 지난 일요일에 시작하여 10 월 오전 3시에 마지막 일요일에 끝납니다.

4 개의 토토 꽁 머니 이름est5edt, CST6CDT, MST7MDTpst8pdtPosix Zone 사양 인 것처럼 보입니다. 그러나 (역사적 이유로) Iana Time Zone 데이터베이스에 해당 이름의 파일이 있기 때문에 실제로 이름이 지정된 시간대로 취급됩니다.posixrules파일.

구역 약어의 합리성에 대한 점검이 없기 때문에 posix 스타일의 토토 꽁 머니 사양을 철자하는 것이 쉽다는 것을 조심해야합니다. 예를 들어,foobar0으로 토토 꽁 머니를 설정작동하여 시스템이 UTC에 대한 다소 독특한 약어를 사용하여 시스템을 효과적으로 남겨 둡니다.