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

3.5. 날짜/토토 꽁 머니 유형

PostgreSQL전체를 지원합니다 세트SQL날짜와 토토 꽁 머니 유형.

표 3-10. 날짜/토토 꽁 머니 유형

type 설명 스토리지 초기 최신 해상도
타임 스탬프 [(P)] 토토 꽁 머니대없이 날짜와 토토 꽁 머니 모두 8 바이트 4713 BC AD 1465001 1 마이크로 초 / 14 자리
타임 스탬프 [(P)] [토토 꽁 머니대와 함께] 날짜와 토토 꽁 머니 모두 8 바이트 4713 BC AD 1465001 1 마이크로 초 / 14 자리
간격 [(P)] 토토 꽁 머니 간격 12 바이트 -178000000 년 178000000 년 1 마이크로 초
날짜 날짜 만 4 바이트 4713 BC 32767 AD 1 일
토토 꽁 머니 [(P)] [토토 꽁 머니대가없는 ] 토토 꽁 머니의 토토 꽁 머니 만 8 바이트 00:00:00.00 23:59:59.99 1 마이크로 초
토토 꽁 머니 [(P)] with Time Zone 토토 꽁 머니의 토토 꽁 머니 만 12 바이트 00 : 00 : 00.00+12 23:59:59.99-12 1 마이크로 초

TIME, 타임 스탬프, 그리고간격선택적 정밀도를 수락하십시오 값P초 분야에서 유지되는 분수 숫자 수. 에 의해 기본값은 정밀도에 명시적인 바인딩이 없습니다. 효과적인 정밀한 한계는 기본 이중에 의해 결정됩니다 값을 저장하는 데 사용되는 정밀 부동 소수점 번호 (초 을 위한간격그 이후 몇 초 만에 2000-01-01 용타임 스탬프). 유용한 범위 의P|타임 스탬프이지만 더 많은 것일 수 있습니다간격. 시스템은 받아 들일 것입니다P0에서 13까지 범위

토토 꽁 머니대 및 토토 꽁 머니대 규칙은 영향을받습니다 지구 기하학뿐만 아니라 정치적 결정. 주변의 토토 꽁 머니대 세계는 1900 년대에 다소 표준화되었다 계속해서 임의의 변화가 발생하기 쉽습니다.postgresql운영 체제를 사용하십시오 출력 토토 꽁 머니대 지원을 제공하는 기본 기능 및 이 시스템에는 일반적으로 정보가 포함되어 있습니다 1902 년부터 2038 년까지 (전체 범위에 해당 기존의 유닉스 시스템 토토 꽁 머니).타임 스탬프와 함께 토토 꽁 머니대토토 꽁 머니대가있는 토토 꽁 머니의지 해당 연도 범위 내에서만 토토 꽁 머니대 정보를 사용하고 그 범위를 벗어난 토토 꽁 머니은UTC.

버전에서 업그레이드 경로를 보장하려면PostgreSQL7.0 이전에, 우리는 인식DateTime(동등한타임 스탬프) 및Timespan(동등한간격). 이러한 유형은 다음과 같습니다 이제에 암시적인 번역을 갖는 것으로 제한타임 스탬프and간격및 이것들에 대한 지원은 다음 릴리스에서 제거됩니다.PostgreSQL(아마도 이름이 지정 될 것입니다 7.3).

유형AbstimeandReltime사용되는 정밀 유형이 낮습니다 내부. 이러한 유형을 사용하지 않아도됩니다. 새로운 응용 프로그램은 오래된 응용 프로그램을 끝내도록 권장됩니다. 적절한 경우. 이러한 내부 유형 중 일부 또는 전부는 할 수 있습니다 향후 릴리스에서 사라집니다.

3.5.1. 날짜/토토 꽁 머니 입력

날짜 및 토토 꽁 머니 입력은 거의 모든 합리적으로 허용됩니다. 를 포함한 형식ISO 8601, SQL-컴파일 가능, 전통PostgreSQL및 기타. 을 위한 일부 형식, 날짜 입력의 월 및 일 순서는 다음과 같습니다. 모호하고 예상을 지정하는 지원이 있습니다 이 분야의 주문. 명령세트 '우리'에 대한 데이터 스타일또는데이터 스타일을 설정하십시오 'NonEuropean'변형 지정"월 전", 명령'유럽'으로 데이터 스타일 설정변형 설정"월 전". 그만큼ISO스타일은 기본값이지만이 기본값은 가능합니다 컴파일 토토 꽁 머니 또는 실행 토토 꽁 머니에 변경되었습니다.

PostgreSQL더 유연합니다 취급 날짜/토토 꽁 머니보다SQL표준 요구 사항. 보다부록 A정확한 구문 분석 날짜/토토 꽁 머니 입력 규칙 및 인식 된 텍스트 필드 달, 요일 및 토토 꽁 머니대를 포함하여.

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

타입[(P)] 'value'

여기서P선택 사항 정밀 사양은 그에 해당하는 정수입니다 초 분야의 분수 숫자 수. 정밀도 에 대해 지정Time, 타임 스탬프간격types.

3.5.1.1. 날짜

다음은에 대한 가능한 입력입니다.날짜타입.

표 3-11. 날짜 입력

example 설명
January 8, 1999 명백한
1999-01-08 ISO-8601 형식, 선호
1/8/1999 U.S.; 유럽 ​​모드에서 8 월 1 일 읽기
8/1/1999 유럽; 미국 모드에서 8 월 1 일 읽기
1/18/1999 U.S.; 모든 모드에서 1 월 18 일 읽기
19990108 ISO-8601 년, 월, 일
990108 ISO-8601 년, 월, 일
1999.008 연도 및 연도
99008 연도 및 연도
J2451187 Julian Day
BC 1 월 8 일 99 학년 일반 시대 전

3.5.1.2. 토토 꽁 머니 [(P) ] [토토 꽁 머니대 없음]

SQL99 당,이 유형은로 지정할 수 있습니다.Time또는 as토토 꽁 머니없는 토토 꽁 머니 존. 선택적 정밀도p0과 13 사이 여야합니다 입력 토토 꽁 머니 문자의 정밀도로 기본값.

다음은 유효합니다토토 꽁 머니입력.

표 3-12. 토토 꽁 머니 입력

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이어야합니다.
Allballs 00:00:00과 동일

3.5.1.3. 토토 꽁 머니 [(정밀)] 토토 꽁 머니이 지남에 따라 존

이 유형은 SQL92에 의해 정의되지만 정의는 전시합니다. 의심스러운 유용성으로 이어지는 속성. 대부분 사례,의 조합날짜, 토토 꽁 머니, 타임 스탬프 토토 꽁 머니대없이and타임 스탬프와 함께 토토 꽁 머니대전체 날짜/토토 꽁 머니 범위를 제공해야합니다 모든 응용 프로그램에 필요한 기능.

선택적 정밀도P0과 13 사이 여야하며 기본값은 입력 토토 꽁 머니 문자 그대로.

토토 꽁 머니대가있는 토토 꽁 머니모든 것을 수락합니다 입력도 합법적 인Time타입, 다음과 같이 법적 토토 꽁 머니대와 함께 추가되었습니다.

표 3-13. 토토 꽁 머니대 입력 토토 꽁 머니

example 설명
04:05:06.789-8 ISO 8601
04:05:06-08:00 ISO 8601
04:05-08:00 ISO 8601
040506-08 ISO 8601

참조테이블 3-14for more examples of time zones.

3.5.1.4. 타임 스탬프 [(정밀)] 토토 꽁 머니없이 존

타임 스탬프 [ (P)] 토토 꽁 머니대없이유형은 날짜와 토토 꽁 머니의 연결로 구성됩니다. 그 다음에 선택 사항ad또는BC, 선택 토토 꽁 머니이 뒤 따릅니다 존. (아래 참조) 따라서

1999-01-08 04:05:06

유효합니다토토 꽁 머니이없는 타임 스탬프 존그 값ISO-공동. 또한 광범위한 형식

1 월 8 일 04:05:06 1999 PST

지원됩니다.

선택적 정밀도P0과 13 사이 여야하며 기본값은 입력타임 스탬프리터럴.

for토토 꽁 머니대가없는 타임 스탬프, 입력에 지정된 명시 적 토토 꽁 머니대가 조용합니다 삼키기. 즉, 결과 날짜/토토 꽁 머니 값이 도출됩니다 입력 값의 명시적인 날짜/토토 꽁 머니 필드에서 토토 꽁 머니대에 맞게 조정되지 않았습니다.

3.5.1.5. 타임 스탬프 [(정밀)] 토토 꽁 머니이 지남에 따라 존

에 대한 유효한 입력타임 스탬프타입 날짜와 토토 꽁 머니의 연결로 구성되며 선택 사항ad또는BC, 선택 토토 꽁 머니 영역이 뒤 따릅니다. (보다 아래.) 따라서

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

유효합니다타임 스탬프ISO-공동. ~ 안에 추가, 광범위한 형식

1 월 8 일 04:05:06 1999 PST

지원됩니다.

선택 사항 정밀도P0과 13 사이 여야하며 기본값은 입력타임 스탬프리터럴.

표 3-14. 토토 꽁 머니대 입력

토토 꽁 머니대 설명
PST 태평양 표준 토토 꽁 머니
-8:00 ISO-8601 PST의 오프셋
-800 ISO-8601 PST에 대한 오프셋
-8 ISO-8601 PST의 오프셋

3.5.1.6. 간격 [(정밀)]

간격값은 함께 작성할 수 있습니다 다음 구문 :

수량 단위 [수량 단위 ...] [방향]
@ 수량 단위 [수량 단위 ...] [방향]

어디서 :수량숫자입니다 (아마도 서명),UnitisSecond, Minute, Hour, day, 주간, Month, , 10 년, Century, Millennium또는 약어 또는 복수 이 단위;방향can beAGO또는 빈. AT 사인 (@)는 선택적 노이즈입니다. 금액 다른 단위 중 하나는 적절하게 암시 적으로 추가됩니다 서명 회계.

일, 토토 꽁 머니, 몇 분 및 초의 양이 될 수 있습니다 명시적인 단위 표시없이 지정됩니다. 예를 들어,'1 12:59:10'|'1 일 12 토토 꽁 머니 59 분 10 초'.

선택적 정밀도P0과 13 사이 여야하며 기본값은 입력 문자.

3.5.1.7. 특별 값

다음SQL-컴파일 가능 함수는 다음과 같이 사용할 수 있습니다 해당 데이터 유형에 대한 날짜 또는 토토 꽁 머니 입력 :current_date, current_time, current_timestamp. 후자는 두 사람을 받아들입니다 선택적 정밀 사양.

PostgreSQL도 지원합니다 편의를위한 몇 가지 특별 상수.

표 3-15. 특별 날짜/토토 꽁 머니 상수

Constant 설명
epoch 1970-01-01 00 : 00 : 00+00 (UNIX 시스템 토토 꽁 머니 영)
Infinity 다른 유효한 토토 꽁 머니보다 늦게
-infinity 다른 유효한 토토 꽁 머니보다 일찍
잘못된 불법 입력
now 현재 트랜잭션 토토 꽁 머니
오늘 오늘 자정
내일 내일 자정
어제 어제 자정
Zulu, Allballs, Z 00 : 00 : 00.00 GMT
'now'가치가 먼저 해석됩니다.

참고 :PostgreSQL버전 7.2,'current'더 이상 지원되지 않습니다 날짜/토토 꽁 머니 상수. 이전에,'current'특별 값으로 저장되었습니다. 그리고 평가'now'표현 또는 유형 변환에 사용됩니다.

3.5.2. 날짜/토토 꽁 머니 산출

출력 형식은 4 가지 스타일 ISO 중 하나로 설정할 수 있습니다. 8601,SQL(Ingres), 전통적인 PostgreSQL 및 독일어,데이터 스타일 설정. 기본값은입니다.ISO형식.

표 3-16. 날짜/토토 꽁 머니 출력 스타일

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

출력날짜andTime스타일은 물론 날짜 또는 토토 꽁 머니 부분 만 위의 예에 따라.

theSQL스타일이 있습니다 유럽 ​​및 비 유럽 (미국) 변형 월이 날을 따르는 지 또는 그 반대의 경우. (참조섹션 3.5.1이 설정이 입력 해석에 어떤 영향을 미치는지 가치.)

표 3-17. 날짜 주문 규칙

스타일 사양 설명 example
유럽 day/Month/ 17/12/1997 15 : 37 : 16.00 MET
US Month/day/year 12/17/1997 07 : 37 : 16.00 PST

간격출력은 입력처럼 보입니다 와 같은 단위를 제외하고 형식또는Century는 몇 년으로 변환되었습니다 날. ISO 모드에서 출력은

[수량 단위 [...]] [Days] Hours : Minutes [Ago]

날짜/토토 꽁 머니의 모양에 영향을 미치는 몇 가지 방법이 있습니다. 유형 :

  • thepgdatestyle환경 백엔드가 우체국 장에서 직접 사용하는 변수 스타트 업.

  • thepgdatestyle환경 프론트 엔드에서 사용하는 변수libpq세션 시작.

  • 데이터 스타일 설정 SQL명령.

3.5.3. 토토 꽁 머니대

PostgreSQL호환SQL92일반적인 사용에 대한 정의. 그러나SQL92표준은 날짜가 이상적입니다 토토 꽁 머니 유형 및 기능. 두 가지 명백한 문제는 다음과 같습니다.

  • 비록날짜타입은 그렇지 않습니다 관련 토토 꽁 머니대가 있습니다.토토 꽁 머니타입 캔. 현실 세계의 토토 꽁 머니대는 할 수 있습니다 날짜와 관련이없는 한 의미가 없습니다. 오프셋 이후 토토 꽁 머니이 일년 내내 다를 수있는 토토 꽁 머니 일광 절약 토토 꽁 머니 경계.

  • 기본 토토 꽁 머니대는 일정한 정수로 지정됩니다. GMT/UTC에서 오프셋. 적응할 수 없습니다 날짜/토토 꽁 머니 산술을 수행 할 때 일광 절약 토토 꽁 머니dst경계.

이러한 어려움을 해결하려면 날짜/토토 꽁 머니을 사용하는 것이 좋습니다 토토 꽁 머니대를 사용할 때 날짜와 토토 꽁 머니을 모두 포함하는 유형. 우리 추천하다not사용 SQL92 유형토토 꽁 머니대가있는 토토 꽁 머니PostgreSQL레거시 응용 프로그램 및 용 다른 RDBMS 구현과의 호환성).PostgreSQL현지 토토 꽁 머니대를 가정합니다 날짜 또는 토토 꽁 머니 만 포함 된 모든 유형의 경우. 또한 토토 꽁 머니대 지원은 기본 운영 체제에서 파생됩니다 토토 꽁 머니 구역 기능이므로 일광 절약을 처리 할 수 ​​있습니다 토토 꽁 머니과 기타 예상되는 행동.

PostgreSQL획득 기본 운영 체제의 토토 꽁 머니대 지원 1902 년에서 2038 년 사이의 날짜 (일반적인 날짜 제한 근처 유닉스 스타일 시스템). 이 범위를 벗어난 모든 날짜는 다음과 같습니다 보편적 인 조정 된 토토 꽁 머니에 지정되고 사용 된 것으로 가정 (UTC).

모든 날짜와 토토 꽁 머니은 UTC에 내부적으로 저장됩니다. 전통적으로 그리니치 임시 (GMT)로 알려져 있습니다. 토토 꽁 머니은입니다 가기 전에 데이터베이스 서버에서 로컬 타임으로 변환 클라이언트 프론트 엔드로 전송되므로 기본적으로 서버에 있습니다. 토토 꽁 머니대.

토토 꽁 머니대 행동에 영향을 줄 수있는 몇 가지 방법이 있습니다.

  • theTZ환경 변수입니다 백엔드가 우체국 마스터 스타트 업에서 직접 사용하여 기본 토토 꽁 머니대.

  • thepgtz환경 변수, if 클라이언트에서 설정하고 libpq에서 a를 보내는 데 사용됩니다.토토 꽁 머니대 설정백엔드에 명령 연결.

  • theSQL명령토토 꽁 머니대 설정토토 꽁 머니대를 설정합니다 세션.

  • theSQL92예선 에

    타임 스탬프at Time Zone 'Zone'

    여기서Zone할 수 있습니다 텍스트 토토 꽁 머니대로 지정 됨 (예 :'PST') 또는 간격으로 (예 :간격 '-08 : 00').

참고 :잘못된 토토 꽁 머니대가 지정된 경우 토토 꽁 머니대는 GMT가됩니다 (어쨌든 대부분의 시스템에서).

참고 :런타임 옵션 인 경우Australian_timezones그때 설정되었습니다CSTandEST참조 미국인이 아닌 호주 토토 꽁 머니대에.

3.5.4. 내부

PostgreSQLJulian을 사용합니다 모든 날짜/토토 꽁 머니 계산 날짜. 그들은 좋은 것을 가지고 있습니다 날짜를 올바르게 예측/계산하는 속성 최근 4713BC 이상의 미래에 이르기까지 연도의 길이는 365.2425 일입니다.

19 세기 이전의 날짜 규칙 흥미로운 독서이지만 보증하기에 충분히 일관되지 않습니다 날짜/토토 꽁 머니 핸들러로 코딩.