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

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

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

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

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

참고 :이전 버전과의 호환성을 보장합니다 의Postgres우리는 또한 계속됩니다 제공하려면DateTime(동등한타임 스탬프) 및타임 스팬(동등한간격) 그러나 이들에 대한 지원은 지금입니다 암시 적 번역으로 제한타임 스탬프and간격. 그만큼 유형AbstimeandReltime사용되는 정밀도 유형이 낮습니다 내부. 이러한 유형을 사용하지 않아도됩니다 새로운 응용 프로그램에서는 오래된 응용 프로그램을 옮기도록 권장됩니다. 적절한 경우에. 이러한 내부 유형 중 일부 또는 전부 향후 릴리스에서 사라질 수 있습니다.

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

날짜 및 토토 꽁 머니 입력은 거의 모든 합리적으로 허용됩니다. 를 포함한 형식ISO-8601, SQL-컴파일 가능, 전통Postgres및 기타. 그만큼 날짜 입력의 월 및 일 주문은 모호 할 수 있습니다. 따라서 설정이 어떻게되어야하는지 지정하는 설정이 있습니다. 모호한 경우에 해석됩니다. 명령'US'로 데이터 스타일 설정또는세트 'NANUROPEAN'에 대한 데이터 스타일변형을 지정합니다 전날 ", 명령데이터 스타일 설정 '유럽 사람'변형 "월 전"를 설정합니다. 그만큼iso스타일은 기본이지만 이것 컴파일 토토 꽁 머니 또는 실행 토토 꽁 머니에 기본값을 변경할 수 있습니다.

참조PostgreSQL : 문서 : 7.1 : 날짜/배트맨 토토 지원정확한 구문 분석 날짜/토토 꽁 머니 입력 규칙 및 인식 된 토토 꽁 머니대.

모든 날짜 또는 토토 꽁 머니 입력이 동봉되어야한다는 것을 기억하십시오. 텍스트 문자열과 같은 단일 따옴표로. 참조섹션 1.1.2.5자세한 내용. SQL에는 다음이 필요합니다 통사론

타입'value'
하지만Postgres더 많습니다 유연한.

3.4.1.1. 날짜

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

표 3-7. 날짜 입력

example 설명
1999 년 1 월 8 일 명백한
1999-01-08 ISO-8601 형식, 우선의
1/8/1999 미국; 8 월 1 일에 읽으십시오 유럽 ​​모드
8/1/1999 유럽; AS를 읽으십시오 8 월 1 일 미국 모드
1/18/1999 미국; 1 월 18 일에 읽으십시오 모든 모드에서
19990108 ISO-8601 월, 월, 낮
990108 ISO-8601 년, 월, 월, 낮
1999.008 연도와 날 년도
99008 연도와 날 년도
BC 1 월 8 일 99 년 전 일반적인 시대

표 3-8. 월 약어

Month 약어
4 월 apr
8 월 8 월
12 월 12 월
2 월 2 월
1 월 Jan
7 월 7 월
6 월 Jun
3 월 Mar
11 월 NOV
10 월 OCT
9 월 9 월 9 일

참고 :The MonthMay명백한 이유 때문에 명백한 약어가 없습니다.

표 3-9. 요일 약어

day 약어
일요일 Sun
월요일 Mon
화요일 tue, 화요일
수요일 wed, wed
목요일 Thu, Thur, Thurs
금요일 fri
토요일 sat

3.4.1.2. 토토 꽁 머니 [토토 꽁 머니대가없는]

SQL99에 따라이 유형은로 참조 할 수 있습니다.Timeand as토토 꽁 머니없는 토토 꽁 머니 존.

다음은 유효합니다Time입력.

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

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

3.4.1.3. 토토 꽁 머니대가있는 토토 꽁 머니

이 유형은 SQL92에 의해 정의되지만 정의는 전시합니다. 유형을 거의 쓸모 없게 만드는 기본 결함. 대부분의 경우의 조합날짜, Time타임 스탬프전체 범위를 제공해야합니다 모든 응용 프로그램에 필요한 날짜/토토 꽁 머니 기능.

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

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

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-12토토 꽁 머니대의 더 많은 예는

3.4.1.4. 타임 스탬프

타임 스탬프타입 날짜와 토토 꽁 머니의 연결로 구성되며 선택 사항ad또는BC, 그리고 선택적인 토토 꽁 머니대가 뒤 따릅니다. (보다 아래.) 따라서

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

유효합니다타임 스탬프그 가치ISO-공동. 또한 광범위한 형식
1 월 8 일 04:05:06 1999 PST
지원됩니다.

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

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

3.4.1.5. 간격

간격s를 지정할 수 있습니다 다음 구문 :

수량 단위 [수량 단위 ...] [방향]
@ 수량 단위 [방향]
어디서 :수량is ...,-1, 0, 1, 2, ...;UnitisSecond, Minute, Hour, day, Week, Month, year, 10 년, Century, 밀레니엄, 또는이 단위의 약어 또는 복수;방향can beAgo또는 빈.

3.4.1.6. 특별 값

다음SQL-Compatible 함수는 날짜 또는 토토 꽁 머니 입력으로 사용할 수 있습니다. 해당 데이터 유형 :current_date, current_time, current_timestamp.

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

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

상수 설명
현재 현재 트랜잭션 토토 꽁 머니, 연기
epoch 1970-01-01 00 : 00 : 00+00 (유닉스 시스템 토토 꽁 머니 제로)
Infinity 다른 유효한 것보다 후반 타임스
-infinity 다른 것보다 초기 유효한 토토 꽁 머니
잘못된 불법 입력
now 현재 트랜잭션 토토 꽁 머니
오늘 오늘 자정
내일 내일 자정
어제 어제 자정
'지금'값이 삽입 됨'current'IS 값이 검색 될 때마다 해결됩니다. 그래서 당신은 아마 사용하고 싶어'now'대부분 응용 프로그램. (물론 당신Really사용하고 싶습니다current_timestamp에 해당합니다.'now'.)

3.4.2. 날짜/토토 꽁 머니 출력

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

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

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

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

theSQL스타일에는 유럽이 있습니다 비 유럽 (US) 변형, 월간 여부를 결정합니다 하루를 따르거나 그 반대도 마찬가지입니다. (위의 날짜/토토 꽁 머니 입력 시점도 참조 이 설정이 입력 값의 해석에 영향을 미치는 방법.)

표 3-15. 날짜 명령 규칙

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

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

[수량 단위 [...]] [Days] 토토 꽁 머니 : Minutes [Ago]

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

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

  • thepgdatestyle환경 세션시 Frontend Libpq에서 사용하는 변수 스타트 업.

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

3.4.3. 토토 꽁 머니대

Postgres호환SQL92정의 일반적인 사용을 위해. 그러나SQL92표준에는 날짜와 토토 꽁 머니이 홀수 혼합되어 있습니다 유형과 기능. 두 가지 명백한 문제는 다음과 같습니다.

  • 비록날짜유형은 그렇지 않습니다 관련 토토 꽁 머니대가 있습니다.Time타입 또는 수행. 실제 토토 꽁 머니대 날짜와 관련이없는 한 세계는 의미가 없을 수 있습니다. 오프셋이 1 년 내내 다를 수있는 토토 꽁 머니 만 일광 절약 토토 꽁 머니 경계.

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

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

Postgres토토 꽁 머니대를 얻습니다 간의 날짜에 대한 기본 운영 체제의 지원 1902 및 2038 (Unix 스타일의 일반적인 날짜 제한 근처 시스템). 이 범위를 벗어나면 모든 날짜는 Universal Coordinated Time (UTC)에서 지정되고 사용됩니다.

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

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

  • TZ 환경 변수는 백엔드에서 사용됩니다 기본 토토 꽁 머니으로 우체국 마스터 스타트 업에서 직접 존.

  • libpq는 토토 꽁 머니대 정보를 백엔드로 보냅니다. 연결.

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

  • theSQL92Qualifier ON

    타임 스탬프at Time Zone 'Zone'
    여기서Zone지정할 수 있습니다 텍스트 토토 꽁 머니대 (예 :'PST') 또는 an 간격 (예 :간격 '-08 : 00').

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

참고 :컴파일러 옵션이 사용되는 경우 _australian_rules 그런 다음 설정EST오프셋이있는 호주 동부 표준시 UTC에서 +10 : 00 토토 꽁 머니

3.4.4. 내부

Postgres줄리안 날짜를 사용합니다 모든 날짜/토토 꽁 머니 계산. 그들은 좋은 재산을 가지고 있습니다 보다 최근 날짜를 올바르게 예측/계산합니다 4713BC는 미래에 멀리서 연도의 길이는 365.2425 일입니다.

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