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

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

PostgreSQL전체를 지원합니다SQL날짜와 토토 꽁 머니표 8-9.PostgreSQL : 문서 : 9.2 : 날짜/사설 토토 기능 및 연산자. 날짜가 있습니다섹션 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)] with Time Zone 12 바이트 토토 꽁 머니대가있는 토토 꽁 머니 만 00 : 00 : 00+1459 24 : 00 : 00-1459 1 마이크로 초 / 14 자리
간격 [필드] [(p)] 16 바이트 토토 꽁 머니 간격 -178000000 년 178000000 년 1 마이크로 초 / 14 자리

참고 :SQL 표준은 그 글쓰기를 요구합니다타임 스탬프토토 꽁 머니대가없는 타임 스탬프PostgreSQL그 행동을 존중합니다.토토 꽁 머니대가있는 타임 스탬프.) Timestamptz에 대한 약어로 받아 들여집니다.토토 꽁 머니대가있는 타임 스탬프; 이것은입니다.PostgreSQL확장.

Time, 타임 스탬프,간격선택적 정밀도를 수락하십시오pp|타임 스탬프and간격타입.

참고 :언제타임 스탬프타임 스탬프값은입니다타임 스탬프값은 OR 이전에 몇 초 만에 저장됩니다타임 스탬프값은 사용하여 구현됩니다타임 스탬프표시된 것보다 표현 될 값

동일한 컴파일 타임 옵션은 또한를 결정합니다.Timeand간격값은 부동 소수점 번호 또는 8 바이트로 저장됩니다간격값은 크기로 정밀하게 저하됩니다

Time유형, 허용 범위p는 8 바이트 일 때 0에서 6입니다

the간격유형에는 추가가 있습니다

연도

필드andp지정되어 있습니다.필드포함두 번째정밀도는에만 적용되므로

유형토토 꽁 머니대가있는 토토 꽁 머니정의됩니다날짜, Time, 토토 꽁 머니대가없는 타임 스탬프토토 꽁 머니대가있는 타임 스탬프완전한 것을 제공해야합니다

유형AbstimeandReltime사용되는 정밀 유형이 낮습니다

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

날짜 및 토토 꽁 머니 입력은 거의 모든 합리적으로 허용됩니다.SQL-전통적, 전통적인Postgres및 기타. 일부 형식의 경우Datestyle매개 변수mdy선택합니다dmytoYMD연말 해석을 선택하려면

PostgreSQL더 유연합니다SQL표준 요구 사항. 보다부록 B정확한 구문 분석

날짜 또는 토토 꽁 머니 문자 그대로 입력이 필요하다는 것을 기억하십시오.섹션자세한 내용은SQL다음 구문이 필요합니다

타입[(p)] 'value'

여기서p선택 사항입니다Time, 타임 스탬프간격유형. 허용 값은입니다

8.5.1.1.

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

표 8-10. 날짜 입력

example 설명
1999-01-08 ISO 8601; 1 월 8 일 모든 모드에서 (권장
1999 년 1 월 8 일 Datestyle입력 모드
1/8/1999 1 월 8 일mdy모드;dmy모드
1/18/1999 1 월 18 일mdy모드;
01/02/03 2003 년 1 월 2 일 inmdy모드; 2003 년 2 월 1 일 indmy모드; 2001 년 2 월 3 일 inYMD모드
1999-Jan-08 1 월 8 일 모든 모드
1 월 -08-1999 1 월 8 일 모든 모드
08-Jan-1999 1 월 8 일 모든 모드
99-Jan-08 1 월 8 일YMD모드,
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 1 월 8 일 99 년 기원전

8.5.1.2.

토토 꽁 머니 유형은입니다.토토 꽁 머니 [p)] 토토 꽁 머니대없이and토토 꽁 머니 [(p)] with Time Zone. Time토토 꽁 머니.

이러한 유형에 대한 유효한 입력은 하루의 토토 꽁 머니으로 구성됩니다.테이블and테이블.) 입력에 토토 꽁 머니대가 지정된 경우토토 꽁 머니대가없는 토토 꽁 머니, 그것은 조용합니다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 전체 이름으로 지정된 토토 꽁 머니대

표 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절대 검사하지 마십시오토토 꽁 머니대가없는 타임 스탬프. a토토 꽁 머니이 지남에 따라 타임 스탬프, 올바른 명시 적 유형을 제공합니다 :

토토 꽁 머니대가있는 타임 스탬프 '2004-10-19 10 : 23 : 54+02'

토토 꽁 머니대가없는 타임 스탬프, PostgreSQL언제든지 조용히 무시할 것입니다

for토토 꽁 머니대가있는 타임 스탬프,GMT). 입력 값TimeZone매개 변수이며의 오프셋을 사용하여 UTC로 변환됩니다.TimeZoneZone.

언제토토 꽁 머니대가있는 타임 스탬프값은 출력입니다. 항상 UTC에서TimeZoneZone 및 표시TimeZone또는 사용토토 꽁 머니대에서구성 (참조섹션).

24623_24642타임 스탬프없이and토토 꽁 머니이 지남에 따라 타임 스탬프일반적으로타임 스탬프값을 가져 가거나 |TimeZone현지 토토 꽁 머니. 다른토토 꽁 머니대에서.

8.5.1.4.

PostgreSQL지원테이블. 값Infinityand-infinity특별히 대표됩니다now및 관련 문자열

표 8-13. 특별 날짜/토토 꽁 머니 입력

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

다음SQL-컴파일 가능한 함수도 사용할 수 있습니다current_date, current_time, current_timestamp, LocalTime, LocalTimestamp. 후자 4 명은섹션.) 이들은 SQL 기능이며not인식

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

날짜/토토 꽁 머니 유형의 출력 형식은 하나로 설정할 수 있습니다.SQL(Ingres), 전통Postgres(unix날짜형식) 또는 독일어. 기본값은입니다ISO형식. (그만큼SQL표준이 필요합니다"SQL"출력 형식은 역사적 사고입니다.)테이블각 출력 스타일의 예를 보여줍니다. 의 출력날짜andTime유형

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

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

참고 :ISO 8601 대문자 사용을 지정합니다T날짜를 분리하려면PostgreSQL수락T35839_35970

inSQL및 Postgres섹션이 설정이 해석에 미치는 영향테이블예를 보여줍니다.

표 8-15. 날짜 명령 규칙

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

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

서식 함수to_char(참조섹션 9.8)도 사용할 수 있습니다

8.5.3. 토토 꽁 머니대

토토 꽁 머니대 및 토토 꽁 머니대 규칙은 영향을받습니다PostgreSQL널리 사용되는 Iana를 사용합니다

PostgreSQLSQL일반적인 사용에 대한 표준 정의. 그러나SQL표준에는 홀수 믹스가 있습니다

  • 비록날짜타입은 가질 수 없습니다Time타입 캔. 현실 세계의 토토 꽁 머니대는 의미가 거의 없습니다

  • 기본 토토 꽁 머니대는 상수 숫자로 지정됩니다.UTC. 그것은dst경계.

이러한 어려움을 해결하려면 날짜/토토 꽁 머니을 사용하는 것이 좋습니다not추천토토 꽁 머니대가있는 토토 꽁 머니PostgreSQL레거시 응용 프로그램 및SQL표준).PostgreSQL가정합니다

모든 토토 꽁 머니대 인식 날짜와 토토 꽁 머니은 내부적으로 저장됩니다UTC. 그들은 변환됩니다TimeZone구성 매개 변수에 표시되기 전에

PostgreSQL허용합니다

  • 예를 들어 풀 타임 존 이름America/New_York. 인식 된 토토 꽁 머니대PG_TIMEZONE_NAMES보기 (참조섹션 45.69). PostgreSQL

  • 예를 들어 토토 꽁 머니대 약어PST. 그러한 사양은 단지 a를 정의합니다PG_TIMEZONE_ABBREVS보기 (참조섹션 45.68). 너TimeZone또는log_timezone토토 꽁 머니대 약어로 약어를 사용할 수 있습니다.토토 꽁 머니대에서운영자.

  • 토토 꽁 머니대 이름과 약어 외에도PostgreSQL수락 할 것입니다std오프셋또는std오프셋dst, 여기서std구역 약어입니다.오프셋는 숫자 오프셋입니다dst는 선택적 일광 절약입니다est5edt아직 인정 된 영역이 아닙니다posixrules입력. 표준PostgreSQL설치,posixrules|US/Easternposixrules파일.

간단히 말해서, 이것은 약어와의 차이입니다2014-06-04 12:00 America/New_York뉴욕의 정오 현지 토토 꽁 머니을 대표합니다.2014-06-04 12:00 EDT이를 지정합니다2014-06-04 12:00정오 동부 표준 토토 꽁 머니 (UTC-5)을 지정합니다.

문제를 복잡하게하기 위해 일부 관할 구역은 동일하게 사용했습니다MSK몇 년 동안 UTC+3, UTC+4 인치를 의미했습니다PostgreSQL해석EST위의 예, 그렇지 않습니다

POSIX 스타일의 토토 꽁 머니대 기능에 대해 조심해야합니다.토토 꽁 머니대를 foobar0으로 설정의지West37439_37473PostgreSQL양성 토토 꽁 머니대가 상쇄되는 ISO-8601 컨벤션을 따릅니다EastOF

모든 경우에 토토 꽁 머니대 이름과 약어가 있습니다PostgreSQL이전 버전

타임 존 이름이나 약어는 거의 연결되지 않습니다.../share/timezone/and.../share/timezonesets/섹션 B.3).

theTimeZone구성 매개 변수를 파일에서 설정할 수 있습니다Postgres또는 다른 것18 장. 일부도 있습니다

  • theSQL명령토토 꽁 머니대 설정토토 꽁 머니대를 설정합니다토토 꽁 머니대 설정더 많은

  • thepgtz환경 변수입니다libpq클라이언트토토 꽁 머니대 설정명령으로

8.5.4. 간격 입력

간격값을 사용하여 작성할 수 있습니다

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

여기서수량는 숫자입니다Unitis마이크로 초, millisecond, 두 번째, Minute, Hour, day, Week, Month, 연도, 10 년, Century, 밀레니엄, 또는방향can beAgo또는 빈. AT 부호 (@)는 선택적 노이즈입니다. 의 양Ago모든 것을 무효화합니다IntervalStyle로 설정되었습니다postgres_verbose.

일, 토토 꽁 머니, 몇 분 및 초의 양이 될 수 있습니다'1 12:59:10''1 일 12 토토 꽁 머니 59 분 10 초'. 또한,'200-10'동일하게 읽습니다'200 년 10 개월'. (이것들SQL표준 및 사용됩니다IntervalStyle가 설정되었습니다sql_standard.)

간격 값은 ISO 8601 토토 꽁 머니으로도 작성할 수 있습니다."형식표준 섹션 4.4.3.2 또는의"대체 형식"섹션

P 수량 Unit [ 수량 Unit ...] [t [ 수량 Unit ...]]

문자열은 a로 시작해야합니다.PT테이블. 장치는 생략 될 수 있으며T. 특히의 의미M이전 또는 전 또는T.

표 8-16. ISO 8601 간격 단위

약어 의미
Y
M 달 (날짜 부분)
W
D Days
H 토토 꽁 머니
M 분 (토토 꽁 머니 부분)
S

대체 형식 :

P [ --Days ] [ T ​​토토 꽁 머니:mings: ]

문자열은 시작해야합니다P및 aT의 날짜와 토토 꽁 머니 부분을 분리합니다

a 간격 상수를 작성할 때필드사양 또는 할당 할 때 a필드사양, 해석필드. 예를 들어간격 '1'년1 년으로 읽히고간격 '1'1 초를 의미합니다. 또한,"오른쪽"필드사양이 조용합니다간격 '1결과를 떨어 뜨립니다

에 따르면SQL표준 간격 값의 모든 필드는 동일해야합니다.'-1 2:03:04'두 날과 모두에 적용됩니다PostgreSQL필드를 가질 수 있습니다IntervalStyle로 설정되었습니다sql_standard그러면 선행 표시가 고려됩니다PostgreSQL해석이 사용됩니다. 에게

내부간격값이 저장됩니다타임 스탬프뺄셈, 이것Justify_DaysandJustify_hours조정할 수 있습니다

장황한 입력 형식 및 더 많은 분야에서'1.5 주'또는'01 : 02 : 03.45 '. 이러한 입력은'1.5 개월'1 개월이됩니다

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

표 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 일
P1Y2M3DT4H5M6S ISO 8601"형식: 위와 같은 의미
P0001-02-03T04 : 05 : 06 ISO 8601"대안: 위와 같은 의미

8.5.5. 간격 출력

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

thesql_standard스타일 제작

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

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

의 출력ISO_8601스타일"형식ISO의 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