이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 8.5. 날짜/토토 꽁 머니 유형버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

8.5. 날짜/배트맨 토토 유형

postgresql전체를 지원합니다 세트SQL날짜 및 배트맨 토토 유형, 표시표 8-9. 그만큼 이러한 데이터 유형에서 사용 가능한 작업은에 설명되어 있습니다.섹션 9.9. 날짜가 계산됩니다 Gregorian 달력에 따르면, 그 전 몇 년 후에도 캘린더가 소개되었습니다 (참조섹션 B.4더 많은 정보).

표 8-9. 날짜/배트맨 토토 유형

이름 스토리지 크기 설명 낮은 값 높은 가치 해상도
타임 스탬프 [(P)] [배트맨 토토대 없음] 8 바이트 날짜와 배트맨 토토 모두 (배트맨 토토대 없음) 4713 BC 294276 AD 1 마이크로 초 / 14 자리
타임 스탬프 [(P)] with Time Zone 8 바이트 배트맨 토토대와 배트맨 토토대와 배트맨 토토과 배트맨 토토 모두 4713 BC 294276 AD 1 마이크로 초 / 14 자리
날짜 4 바이트 날짜 (배트맨 토토 없음) 4713 BC 5874897 AD 1 일
배트맨 토토 [(P)] [ 배트맨 토토대없이] 8 바이트 배트맨 토토의 배트맨 토토 (날짜 없음) 00:00:00 24:00:00 1 마이크로 초 / 14 자리
배트맨 토토 [(P)] 배트맨 토토대와 함께 12 바이트 배트맨 토토대가있는 배트맨 토토 만 00 : 00 : 00+1459 24:00:00-1459 1 마이크로 초 / 14 자리
간격 [필드] [(P)] 16 바이트 배트맨 토토 간격 -178000000 년 178000000 년 1 마이크로 초 / 14 자리

참고 :SQL 표준은 저술을 요구합니다타임 스탬프배트맨 토토대가없는 타임 스탬프PostgreSQL그 행동을 존중합니다. (릴리스 7.3 이전에배트맨 토토이 지남에 따라 타임 스탬프 존.)Timestamptz약어배트맨 토토대가있는 타임 스탬프; 이것은입니다.PostgreSQL확장.

Time, 타임 스탬프간격선택적 정밀 값 수락P수를 지정합니다 분야에서는 분수 숫자가 유지됩니다. 기본적으로, 거기 정밀도에 명시 적으로 구속되지 않습니다. 허용 범위P타임 스탬프and간격타입.

참고 :언제타임 스탬프값은입니다 8 바이트 정수 (현재 기본값), 마이크로 초로 저장됩니다 정밀도는 전체 값을 통해 사용할 수 있습니다. 언제타임 스탬프값은 이중으로 저장됩니다 정밀 부동 소수점 번호 대신 (더 이상 사용되지 않은 컴파일 타임 옵션), 유효 정밀 한계는 6보다 작을 수 있습니다.타임 스탬프값은 몇 초 만에 저장됩니다 또는 자정 이후 2000-01-01. 언제타임 스탬프값은 부동 소수점 번호 인 마이크로 초를 사용하여 구현됩니다 2000-01-01의 몇 년 이내에 날짜에 대한 정밀도가 달성됩니다. 그러나 날짜에 대한 정밀성은 더 멀리 떨어져 있습니다. 사용하십시오 플로팅 포인트 DateTimes는 더 큰 범위의를 허용합니다.타임 스탬프위에 표시된 것보다 표현 될 값 : 기원전 4713 년부터 5874897 년까지

동일한 컴파일 타임 옵션은 또한를 결정합니다.Timeand간격값은입니다 부동 소수점 번호 또는 8 바이트 정수로 저장됩니다. 에서 부동 소수점 케이스, 큰간격값 간격의 크기가 증가함에 따라 정밀하게 저하됩니다.

Time유형, 허용 범위P는 8 바이트 일 때 0에서 6입니다 정수 스토리지가 사용되거나 떠 다니는 경우 0에서 10까지 스토리지가 사용됩니다.

the간격유형에는 추가가 있습니다 옵션, 글을 쓰면 저장된 필드 세트를 제한하는 옵션 이 문구 중 하나 :

연도
월
낮
배트맨 토토
분
두번째
매년
매일
하루에서 분
하루에서 두 번째
배트맨 토토에서 분
배트맨 토토에서 두 번째로
분에서 두 번째로

필드andP지정되어 있습니다.필드포함Second, 정밀도는에만 적용되므로 초.

유형배트맨 토토대가있는 배트맨 토토SQL 표준이지만 정의는 특성을 보여줍니다. 의심스러운 유용성. 대부분의 경우의 조합날짜, Time, 배트맨 토토대가없는 타임 스탬프배트맨 토토대가있는 타임 스탬프완전한 것을 제공해야합니다 모든 애플리케이션에 필요한 범위/배트맨 토토 기능.

유형AbstimeReltime사용되는 정밀도 유형이 낮습니다 내부. 이러한 유형을 사용하지 않아도됩니다 응용 프로그램; 이러한 내부 유형은 미래에 사라질 수 있습니다 풀어 주다.

8.5.1. 날짜/배트맨 토토 입력

날짜 및 배트맨 토토 입력은 거의 모든 합리적인 형식으로 허용됩니다. ISO 8601 포함SQL-전통적, 전통적인Postgres및 기타. 일부 형식의 경우 날짜, 매월 및 날짜 입력의 순서는 모호하며 이들의 예상 순서를 지정하는 지원이 있습니다. 전지. 설정Datestyle매개 변수 에게mdy매일 연도를 선택합니다 해석,dmy선택합니다 주간 해석 또는YMDto 연말 해석을 선택하십시오.

PostgreSQL더 유연합니다 처리 날짜/배트맨 토토 입력 처리SQL표준 요구 사항. 보다부록 B정확한 구문 분석 규칙 날짜/배트맨 토토 입력 및 인식 된 텍스트 필드 달, 요일 및 배트맨 토토대

날짜 또는 배트맨 토토 문자 그대로 입력이 필요하다는 것을 기억하십시오. 텍스트 문자열과 같은 단일 따옴표로 둘러싸여 있습니다. 참조섹션 4.1.2.7자세한 내용은SQL다음 구문이 필요합니다

타입[(P)] ''value'

여기서P는 선택적 정밀도입니다 초에 분수 숫자 수를 제공하는 사양 필드. 정밀도는에 대해 지정할 수 있습니다.Time, 타임 스탬프간격유형. 허용 값은 위에서 언급되어 있습니다. 정밀도가 없다면 일정한 사양으로 지정된 경우 정밀도로 기본값 문자 그대로의 가치

8.5.1.1. 날짜

테이블 8-10에 대한 가능한 입력을 보여줍니다날짜타입.

표 8-10. 날짜 입력

example 설명
1999-01-08 ISO 8601; 1 월 8 일 모든 모드 (권장 형식)
1999 년 1 월 8 일 Datestyle입력 방법
1/8/1999 1 월 8 일mdy모드; 8 월 1 일dmy모드
1/18/1999 1 월 18 일mdy모드; 거부 기타 모드
01/02/03 2003 년 1 월 2 일mdy모드; 2월 1, 2003 indmy모드; 2001 년 2 월 3 일 in19899_19904모드
1999-Jan-08 1 월 8 일 모든 모드
1 월 -08-1999 1 월 8 일 모든 모드
08-Jan-1999 1 월 8 일 모든 모드
99-Jan-08 1 월 8 일YMDMode, Else Error
08-Jan-99 1 월 8 일, 오류를 제외하고YMD모드
1 월 -08-99 1 월 8 일, 오류를 제외하고YMD모드
19990108 ISO 8601; 1999 년 1 월 8 일 모든 모드
990108 ISO 8601; 1999 년 1 월 8 일 모든 모드
1999.008 연도 및 연도
J2451187 줄리안 날짜
BC 99 년 1 월 8 일 기원전 99 년

8.5.1.2. 타임스

배트맨 토토 유형은입니다.배트맨 토토 [(P)] 배트맨 토토대없이and배트맨 토토 [(P)] 배트맨 토토이 지남에 따라 존. 배트맨 토토배트맨 토토대가없는 배트맨 토토.

이러한 유형에 대한 유효한 입력은 다음 배트맨 토토으로 구성됩니다. 선택적 배트맨 토토대에 따라. (보다테이블 8-11and표 8-12.) 배트맨 토토대가 입력에 지정된 경우배트맨 토토 배트맨 토토대없이, 조용히 무시됩니다. 당신도 할 수 있습니다 날짜를 지정하지만 배트맨 토토을 사용하는 경우를 제외하고는 무시됩니다. 와 같은 일광 절약 규칙을 포함하는 영역 이름America/New_York. 이 경우 날짜를 지정합니다 표준 또는 일광 절약 배트맨 토토이 적용됩니다. 적절한 배트맨 토토대 오프셋은입니다 녹음배트맨 토토대가있는 배트맨 토토value.

표 8-11. 배트맨 토토 입력

example 설명
04:05:06.789 ISO 8601
04:05:06 ISO 8601
04:05 ISO 8601
040506 ISO 8601
04 : 05 AM 04:05와 동일; AM은 가치에 영향을 미치지 않습니다
04 : 05 PM 16:05와 동일; 입력 배트맨 토토은 <= 12이어야합니다.
04:05:06.789-8 ISO 8601
04:05:06-08:00 ISO 8601
04:05-08:00 ISO 8601
040506-08 ISO 8601
04 : 05 : 06 PST 약어에 의해 지정된 배트맨 토토대
2003-04-12 04:05:06 America/New_york 전체 이름으로 지정된 배트맨 토토대

표 8-12. 배트맨 토토대 입력

example 설명
PST 약어 (태평양 표준 배트맨 토토)
America/New_York 풀 타임 존 이름
pst8pdt POSIX 스타일의 배트맨 토토대 사양
-8:00 ISO-8601 PST의 오프셋
-800 ISO-8601 PST의 오프셋
-8 ISO-8601 PST의 오프셋
Zulu UTC에 대한 군사 약어
Z 짧은 형태의Zulu

참조섹션 8.5.3배트맨 토토대를 지정하는 방법에 대한 자세한 내용.

8.5.1.3. 배트맨 토토 우표

타임 스탬프 유형에 대한 유효한 입력은 날짜와 배트맨 토토에 대한 연결, 선택 배트맨 토토이 이어집니다. 구역, 그 다음에 선택 사항ad또는BC. (또는ad/BC앞에 나타날 수 있습니다 배트맨 토토대이지만 이것은 선호하는 주문이 아닙니다.) 따라서 :

1999-01-08 04:05:06

및 :

1999-01-08 04:05:06 -8:00

유효한 값이며ISO8601 표준. 또한, 공통 체재:

1 월 8 일 04:05:06 1999 PST

지원됩니다.

theSQL표준 차별화배트맨 토토대가없는 타임 스탬프and배트맨 토토대가있는 타임 스탬프리터럴에 의한 A의 존재"+"또는"-"배트맨 토토이 지나면 기호 및 배트맨 토토대 오프셋. 따라서 표준에 따라

타임 스탬프 '2004-10-19 10:23:54'

is배트맨 토토대가없는 타임 스탬프, 하는 동안

타임 스탬프 '2004-10-19 10 : 23 : 54+02'

is배트맨 토토대가있는 타임 스탬프. PostgreSQL절대 조사하지 마십시오 유형을 결정하기 전에 문자 그대로 문자열의 내용 그러므로 위의 두 가지를 모두로 취급합니다.배트맨 토토대가없는 타임 스탬프. 문자 그대로 보장합니다 로 취급됩니다.배트맨 토토대가있는 타임 스탬프, Give 올바른 명시 적 유형 :

배트맨 토토대가있는 타임 스탬프 '2004-10-19 10 : 23 : 54+02'

로 결정된 문자에서배트맨 토토대가없는 타임 스탬프, PostgreSQL모든 배트맨 토토대를 조용히 무시합니다 표시. 즉, 결과 값은에서 파생됩니다 입력 값의 날짜/배트맨 토토 필드이며 배트맨 토토에 따라 조정되지 않습니다. 존.

for배트맨 토토대가있는 타임 스탬프, 내부적으로 저장된 값은 항상 UTC에 있습니다 (유니버설 조정 전통적으로 그리니치 맨으로 알려진 배트맨 토토,gmt). 명시적인 배트맨 토토이있는 입력 값 지정된 영역은 적절한 오프셋을 사용하여 UTC로 변환됩니다. 그 배트맨 토토대. 입력 문자열에 배트맨 토토대가 언급되지 않으면 시스템에 표시된 배트맨 토토대에있는 것으로 가정합니다.TimeZone매개 변수이며의 오프셋을 사용하여 UTC로 변환됩니다.TimeZoneZone.

언제배트맨 토토대가있는 타임 스탬프값은입니다 출력, 항상 UTC에서 현재로 변환됩니다TimeZoneZone은 현지 배트맨 토토으로 표시됩니다 존. 다른 배트맨 토토대의 배트맨 토토을 보려면 변경TimeZone또는 사용at 배트맨 토토대구성 (참조섹션 9.9.3).

간의 변환배트맨 토토이없는 타임 스탬프 존and배트맨 토토대가있는 타임 스탬프일반적으로배트맨 토토이없는 타임 스탬프 존값을 가져 가거나 |TimeZone현지 배트맨 토토. 다른 배트맨 토토대가 될 수 있습니다 사용을 사용하여 지정배트맨 토토에 존.

8.5.1.4. 특별한 값

PostgreSQL여러 지원 편의를위한 특별 날짜/배트맨 토토 입력 값테이블 8-13. 값Infinity-infinity는 특별히 내부에 표시됩니다 시스템은 변경되지 않은 것으로 표시됩니다. 그러나 다른 사람들은입니다 단순히 평범한 것으로 전환 될 표기법 읽을 때 날짜/배트맨 토토 값. (특히,now및 관련 문자열은 특정로 변환됩니다 읽히 자마자 배트맨 토토 값.)이 모든 값은 SQL에서 상수로 사용될 때 단일 따옴표로 동봉 됨 명령.

표 8-13. 특별 날짜/배트맨 토토 입력

입력 문자열 유효한 유형 설명
epoch 날짜, 타임 스탬프 1970-01-01 00 : 00 : 00+00 (UNIX 시스템 배트맨 토토 제로)
Infinity 날짜, 타임 스탬프 다른 모든 타임 스탬프보다 늦게
-infinity 날짜, 타임 스탬프 다른 모든 타임 스탬프보다 일찍
now 날짜, Time, 타임 스탬프 현재 트랜잭션의 시작 배트맨 토토
오늘 날짜, 타임 스탬프 오늘 자정
내일 날짜, 타임 스탬프 내일 자정
어제 날짜, 타임 스탬프 어제 자정
Allballs 배트맨 토토 00 : 00 : 00.00 UTC

다음SQL-호환 가능 함수는 또한 현재 배트맨 토토 값을 얻는 데 사용될 수 있습니다. 해당 데이터 유형 :current_date, current_time, current_timestamp, LocalTime, LocalTimestamp. 후자의 4 개는 선택적 하위 초 정밀도를 받아들입니다 사양. (보다섹션 9.9.4.) 이들은 SQL 기능이며not데이터 입력에서 인식 문자열.

8.5.2. 날짜/배트맨 토토 출력

날짜/배트맨 토토 유형의 출력 형식은 다음 중 하나로 설정할 수 있습니다. 네 가지 스타일 ISO 8601,SQL(Ingres), 전통Postgres(unix날짜형식) 또는 독일어. 그만큼 기본값은입니다.ISO형식. (그만큼SQL표준은 사용이 필요합니다 ISO 8601 형식. 의 이름"SQL"출력 형식은 역사적 사고입니다.)테이블 8-14각 출력 스타일의 예를 보여줍니다. 의 출력날짜andTime유형은입니다 일반적으로 주어진에 따라 날짜 또는 배트맨 토토 부분 만 예. 그러나Postgres스타일 출력 날짜 전용 값ISO형식.

표 8-14. 날짜/배트맨 토토 출력 스타일

스타일 사양 설명 example
ISO ISO 8601, SQL 표준 1997-12-17 07:37:16-08
SQL 전통적인 스타일 12/17/1997 07 : 37 : 16.00 PST
Postgres 원본 스타일 wed 12 월 17 일 07:37:16 1997 PST
독일어 지역 스타일 17.12.1997 07 : 37 : 16.00 PST

참고 :ISO 8601 대문자 사용을 지정T날짜와 배트맨 토토을 분리하려면PostgreSQL해당 형식을 수락합니다 입력이지만 출력시 공간이 아닌 공간을 사용합니다.T33357_33474

inSQL및 Postgres 스타일, DMY 필드 주문이 있었다면 월 전 날 나타납니다. 지정, 그렇지 않으면 월이 하루 전에 나타납니다. (보다섹션 8.5.1이 설정이 입력 값의 해석에 미치는 영향에 대해서는.)테이블 8-15예를 보여줍니다.

표 8-15. 날짜 명령 규칙

Datestyle설정 입력 순서 출력 예
SQL, DMY day/Month/ 17/12/1997 15 : 37 : 16.00 CET
SQL, MDY Month/day/ 12/17/1997 07 : 37 : 16.00 PST
Postgres, dmy day/Month/ 수요일 17 일 07:37:16 1997 PST

날짜/배트맨 토토 스타일은 사용자가 선택할 수 있습니다.데이터 스타일 설정명령,Datestyle매개 변수 에서postgresql.conf구성 파일 또는pgdatestyle환경 서버 또는 클라이언트의 변수.

서식 함수TO_CHAR(참조사설 토토 사이트 : 문서 : 9.3 : 사설 토토 사이트 사설 토토 사이트 서식 함수)도 있습니다 날짜/배트맨 토토 출력을 포맷하는보다 유연한 방법으로 제공됩니다.

8.5.3. 배트맨 토토대

배트맨 토토대 및 배트맨 토토 구역 규칙은 영향을받습니다 지구 기하학뿐만 아니라 정치적 결정. 주변의 배트맨 토토대 세계는 1900 년대에 다소 표준화되었지만 계속되었습니다 특히 임의의 변화가 발생하기 쉬운 것, 특히 일광 절약 규칙.PostgreSQL널리 사용되는 IANA (OLSON) 배트맨 토토대 데이터베이스를 사용합니다 역사적 배트맨 토토대 규칙에 대한 정보. 배트맨 토토에 미래, 가정은 주어진에 대한 최신 알려진 규칙입니다. 배트맨 토토대는 계속해서 무기한으로 관찰됩니다. 미래.

PostgreSQL노력 와 호환SQL표준 일반적인 사용에 대한 정의. 그러나SQL표준에는 날짜와 배트맨 토토이 이상적입니다 유형과 기능. 두 가지 명백한 문제는 다음과 같습니다.

  • 비록날짜타입은 가질 수 없습니다 관련 배트맨 토토대,Time타입 캔. 배트맨 토토 실제 세계의 구역은 오프셋은 일광 절약 배트맨 토토 경계가있는 해.

  • 기본 배트맨 토토대는 일정한 숫자 오프셋으로 지정됩니다. 에서UTC. 그러므로 날짜/배트맨 토토을 할 때 일광 절약 배트맨 토토에 적응하는 것은 불가능합니다 전반적으로 산술dst경계.

이러한 어려움을 해결하려면 날짜/배트맨 토토을 사용하는 것이 좋습니다 배트맨 토토대를 사용할 때 날짜와 배트맨 토토을 모두 포함하는 유형. 우리는아님사용 권장 유형배트맨 토토대가있는 배트맨 토토(하지만 지원PostgreSQL레거시 응용 프로그램 및 준수 준수SQL표준).PostgreSQL현지 배트맨 토토대를 가정합니다 날짜 또는 배트맨 토토 만 포함 된 모든 유형.

모든 배트맨 토토대 인식 날짜와 배트맨 토토은 내부적으로 저장됩니다UTC. 그들은 지역으로 전환됩니다 에 의해 지정된 영역에서의 배트맨 토토TimeZone클라이언트에 표시되기 전에 구성 매개 변수.

PostgreSQL허용합니다 세 가지 형태로 배트맨 토토 영역을 지정하십시오.

  • 예를 들어 풀 타임 존 이름America/New_York. 인식 된 배트맨 토토대 이름은입니다 에 나열PG_TIMEZONE_NAMES보기 (참조사설 토토 사이트 : 문서 : 9.3 : PG_TIMEZONE_NAMES).PostgreSQL널리 사용되는 것을 사용합니다 이 목적을위한 IANA 배트맨 토토대 데이터이므로 동일한 배트맨 토토대 영역 이름 다른 소프트웨어에 의해서도 인식됩니다.

  • 예를 들어 배트맨 토토대 약어PST. 그러한 사양은 단지 a를 정의합니다 풀 타임 존 이름과는 대조적으로 UTC의 특정 상쇄 일광 절약 절약 전환 날짜 규칙을 암시 할 수 있습니다. 잘. 인정 된 약어는에 나열되어 있습니다.PG_TIMEZONE_ABBREVS보기 (참조섹션 47.70). 당신은 설정할 수 없습니다 구성 매개 변수TIMEZONE또는log_timezoneto 배트맨 토토대 약어이지만 약어를 사용할 수 있습니다. 날짜/배트맨 토토 입력 값 및배트맨 토토에 존운영자.

  • 배트맨 토토대 이름과 약어 외에도PostgreSQLPosix 스타일을 수락합니다 양식의 배트맨 토토대 사양std오프셋또는std오프셋dst, 어디std구역 약어입니다.오프셋는 몇 배트맨 토토 만에 숫자 오프셋입니다 UTC에서 서쪽 및dstis 선택적 일광 절약 구역 약어는 대기한다고 가정합니다 주어진 오프셋보다 1 배트맨 토토 앞서. 예를 들어, ifest5edt아직 인정 된 영역 이름이 아니 었습니다 받아 들여지고 기능적으로 유나이티드와 동일합니다. 동해안 배트맨 토토. 일광 절약 구역 이름이 현재, 그것은 동일한 것에 따라 사용되는 것으로 가정합니다. Iana 배트맨 토토대에 사용 된 일광 절약 전환 규칙 데이터베이스posixrules입력. a 기준PostgreSQL설치,posixrules|US/Eastern사양은 미국 일광 절약 규칙을 따릅니다. 필요한 경우, 당신 대체 하여이 동작을 조정할 수 있습니다.posixrules파일.

간단히 말해서, 이것은 약어와 전체의 차이입니다. 이름 : 약어는 UTC의 특정 오프셋을 나타냅니다 많은 이름은 현지 일광 절약 배트맨 토토 규칙을 의미합니다. 그리고 두 개의 가능한 UTC 오프셋이 있습니다. 예로2014-06-04 12:00 America/New_York정오를 나타냅니다 이 특정 날짜는 동부였던 뉴욕의 현지 배트맨 토토 일광 배트맨 토토 (UTC-4). 그래서2014-06-04 12:00 EDT동시에 순간을 지정합니다. 하지만2014-06-04 12:00 EST정오 동부 표준을 지정합니다 일광 절약이 명목상인지 여부에 관계없이 배트맨 토토 (UTC-5) 그 날짜에 적용됩니다.

문제를 복잡하게하기 위해 일부 관할 구역도 동일하게 사용했습니다 배트맨 토토대 약어는 다른 UTC 오프셋을 다른 UTC 오프셋을 의미합니다 타임스; 예를 들어, 모스크바에서MSK몇 년 동안 UTC+3을 의미하고 다른 사람들에게는 UTC+4를 의미합니다.PostgreSQL그러한 약어를 해석합니다 그들이 의미하는 것 (또는 가장 최근에 의미하는)에 따르면 지정된 날짜; 그러나와 마찬가지로EST위의 예, 이것은 반드시 지역 민사 배트맨 토토과 동일하지는 않습니다. 그 날짜에.

POSIX 스타일의 배트맨 토토대 기능이 체크인이 없기 때문에 가짜 입력을 조용히 수락합니다. 구역 약어의 합리성. 예를 들어,배트맨 토토대를 foobar0으로 설정떠날 것입니다 시스템은 다소 독특한 약어를 사용하여 효과적으로 사용합니다 UTC. 명심해야 할 또 다른 문제는 Posix 배트맨 토토대에서 이름, 긍정적 인 오프셋은 위치에 사용됩니다West42418_42452PostgreSQLISO-8601을 따릅니다 긍정적 인 배트맨 토토대 오프셋이있는 컨벤션East의 그리니치.

모든 경우에 배트맨 토토대 이름과 약어가 인식됩니다 비면적으로. (이것은의 변화입니다.PostgreSQL8.2 이전 버전 일부 상황에서는 사례에 민감하지만 다른 상황은 아닙니다.)

타임 존 이름이나 약어는 두 가지로 연결되지 않았습니다 섬기는 사람; 아래에 저장된 구성 파일에서 얻습니다..../share/timezone/and.../share/timezonesets/설치 디렉토리 (참조PostgreSQL : 문서 : 9.3 : 날짜/시간 구성 메이저 토토 사이트).

theTimeZone구성 매개 변수를 파일에서 설정할 수 있습니다postgresql.conf또는 다른 표준에서 에 설명 된 방법범퍼카 토토 : 문서 : 9.3 : 서버 구성. 그것을 설정하는 특별한 방법도 있습니다 :

  • theSQL명령배트맨 토토대 설정세션의 배트맨 토토대를 설정합니다. 이것은의 대체 철자입니다.배트맨 토토대를 설정하십시오 에게더 많은 SQL-SPEC 호환 구문.

  • thepgtz환경 변수는 사용합니다.libpq고객을 보내는 클라이언트배트맨 토토대 설정서버에 명령 연결.

8.5.4. 간격 입력

간격값을 사용하여 값을 쓸 수 있습니다 다음 장점 구문 :

[@]수량 Unit[수량 Unit...] [방향]

여기서수량숫자입니다 (아마도 서명);Unitis44699_44712, millisecond, Second, Minute, Hour, day, , Month, Year, 10 년, Century, 밀레니엄또는 약어 또는 복수 이 단위;방향can beAgo또는 빈. AT 부호 (@)는 선택적 노이즈입니다. 다른 금액 유닛은 적절한 사인 회계와 함께 암시 적으로 추가됩니다.Ago모든 필드를 무효화합니다. 이 구문입니다 간격 출력에도 사용됩니다. ifIntervalStyleIS 설정postgres_verbose.

일, 배트맨 토토, 몇 분 및 초를 지정할 수 있습니다. 명백한 단위 표시없이. 예를 들어,'1 12:59:10 '|'1 일 12 배트맨 토토 59 분 10 초 '. 또한 몇 년과 몇 달의 조합 대시로 지정할 수 있습니다. 예를 들어'200-10'|'200 년 10 개월'. (이 짧은 형태가 있습니다 사실이 허용하는 유일한 사람SQL표준, 출력에 사용됩니다.IntervalStyle로 설정되었습니다sql_standard.)

간격 값은 ISO 8601 배트맨 토토 간격으로 서면 할 수 있습니다. 사용"형식 지정자 "표준 섹션 4.4.3.2 또는의"대체 형식"섹션 4.4.3.3. 지정자가있는 형식은 다음과 같습니다.

P수량 Unit[ 수량 Unit ...] [T [ 수량 Unit ...]]

문자열은 a로 시작해야합니다.P및 5 월 포함t배트맨 토토 단위. 사용 가능한 단위 약어는에 나와 있습니다.테이블 8-16. 단위는 생략 될 수 있으며 순서대로 지정할 수 있습니다. 그러나 하루보다 작은 단위는 이후에 나타나야합니다.t. 특히의 의미m그것이 전후에 있는지 여부에 따라t.

표 8-16. ISO 8601 간격 단위 약어

약어 의미
y
M 달 (날짜 부분)
W
d Days
H 배트맨 토토
M 분 (배트맨 토토 부분)
S

대체 형식 :

P [ Years--days ] [t배트맨 토토:mings: ]

문자열은 시작해야합니다P및 aT의 날짜와 배트맨 토토 부분을 분리합니다 간격. 값은 ISO 8601과 유사한 숫자로 제공됩니다. 날짜.

a 간격 상수를 작성할 때필드사양 또는 할당 할 때 a a로 정의 된 간격 열로 문자열필드사양, 해석 표시되지 않은 수량은에 따라 다릅니다.필드. 예를 들어간격 '1'년1 년으로 읽히고간격 '1'1 초를 의미합니다. 또한 필드 값"오른쪽으로"최소한 에 의해 허용되는 중요한 필드필드사양은 조용히 폐기됩니다. 예를 들어, 쓰기간격 '1 일 2:03:04' 배트맨 토토에서 분초 필드를 떨어 뜨 렸지만 그렇지 않습니다 일일 필드.

에 따르면SQL표준 간격 값의 모든 필드는 동일한 부호를 가져야하므로 선행 음수 부호는 모든 필드에 적용됩니다. 예를 들어 간격 문자 그대로 음의 부호'-1 2:03:04 '일과 배트맨 토토/분/초에 적용됩니다 부분품.PostgreSQL허용 다른 표지판을 가지고 있으며 전통적으로 각 분야를 처리합니다. 독립적으로 서명 한 텍스트 표현에서 이 예에서는 배트맨 토토/분/두 번째 부분이 양수로 간주됩니다. 만약에IntervalStyle로 설정되었습니다sql_standard그러면 선행 표시가 고려됩니다 모든 필드에 적용하십시오 (그러나 추가 표시가없는 경우에만). 그렇지 않으면 전통적인PostgreSQL해석이 사용됩니다. 피하기 위해 모호성, 각각에 명시 적 표시를 첨부하는 것이 좋습니다. 필드가 부정적인 필드.

장점 입력 형식 및 일부 분야에서 소형 입력 형식, 필드 값은 분수 부품을 가질 수 있습니다. ~을 위한 예'1.5 주'또는'01 : 02 : 03.45 '. 이러한 입력은 스토리지의 적절한 달, 일 및 초. 언제 이로 인해 몇 달 또는 며칠이 발생할 수 있습니다. 변환을 사용하여 하위 주문 필드에 분수가 추가됩니다. 요인 1 개월 = 30 일 및 1 일 = 24 배트맨 토토. 예를 들어,'1.5 개월'1 개월 15 일이됩니다. 몇 초만 출력에서 ​​분수로 표시됩니다.

테이블 8-17유효한 몇 가지 예를 보여줍니다간격입력.

표 8-17. 간격 입력

example 설명
1-2 SQL 표준 형식 : 1 년 2 개월
3 4:05:06 SQL 표준 형식 : 3 일 4 배트맨 토토 5 분 6 초
1 년 2 개월 3 일 4 배트맨 토토 5 분 6 초 전통적인 Postgres 형식 : 1 년 2 개월 3 일 4 배트맨 토토 5 분 6 초
P1Y2M3DT4H5M6S ISO 8601"지정자와 함께 형식": 위와 같은 의미
P0001-02-03T04 : 05 : 06 ISO 8601"대체 형식": 동일합니다 위와 같은 의미

내부간격값은 다음과 같이 저장됩니다 달, 일, 초. 이것은 일의 수 때문에 이루어집니다 한 달 안에 다양하고 일광이라면 하루는 23 ~ 25 배트맨 토토을 가질 수 있습니다. 절약 배트맨 토토 조정이 관련됩니다. 몇 달과 일이 있습니다 정수 반면 초 필드는 분수를 저장할 수 있습니다. 왜냐하면 간격은 일반적으로 일정한 문자열 또는에서 생성됩니다.타임 스탬프삭도이 저장 방법은 잘 작동합니다 대부분의 경우 예상치 못한 결과를 일으킬 수 있습니다.

추출을 선택하십시오 ('80 분 ':: interval);
 date_part
----------
         1

추출을 선택하십시오 ('80 배트맨 토토 ':: 간격);
 date_part
----------
         0

기능Justify_DaysandJustify_hours정상 범위를 넘어서는 날과 배트맨 토토 조정.

8.5.5. 간격 출력

간격 유형의 출력 형식은 중 하나로 설정할 수 있습니다. 4 가지 스타일sql_standard, Postgres, postgres_verbose, 또는ISO_8601, 명령 사용IntervalStyle 설정. 기본값은입니다.Postgres형식.표 8-18각 출력 스타일의 예를 보여줍니다.

thesql_standard스타일은 출력을 생성합니다 이는 SQL 표준의 간격 사양을 준수합니다 간격 값이 표준을 충족하는 경우 문자 문자열 제한 (연말 만 또는 주간 만, no 양성 및 음성 구성 요소의 혼합). 그렇지 않으면 출력 표준 연도 문자 문자열과 명시 적 표시가 명백한 명백한 징후가있는 주간 문자 문자열 혼합 신호 간격.

출력Postgres스타일 의 출력과 일치합니다.PostgreSQL8.4 이전에 출시 될 때Datestyle매개 변수 로 설정되었습니다ISO.

출력postgres_verbose스타일은의 출력과 일치합니다.PostgreSQL8.4 이전에 출시 될 때Datestyle매개 변수가 설정되었습니다 비ISO출력.

의 출력ISO_8601스타일 일치"지정자와 함께 형식"ISO 8601 표준의 4.4.3.2 절에 설명되어 있습니다.

표 8-18. 간격 출력 스타일 예

스타일 사양 연말 간격 주간 간격 혼합 간격
sql_standard 1-2 3 4:05:06 -1-2 +3 -4 : 05 : 06
Postgres 1 년 2 몽 3 일 04:05:06 -1 년 -2 몽 +3 일 -04 : 05 : 06
postgres_verbose @@ 1 년 2 몽 @ 3 일 4 배트맨 토토 5 분 6 초 @ 1 년 2 몽스 -3 일 4 배트맨 토토 5 분 6 초 전
ISO_8601 P1Y2M P3DT4H5M6S P-1Y-2M3DT-4H-5M-6S