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

5.5. 날짜/스포츠 토토 유형

PostgreSQL전체를 지원합니다 세트SQL날짜와 스포츠 토토 에 표시된 유형테이블 5-9.

표 5-9. 날짜/스포츠 토토 유형

type 설명 스토리지 초기 최신 해상도
타임 스탬프 [(P)] [스포츠 토토대가없는 ] 날짜와 스포츠 토토 모두 8 바이트 4713 BC AD 1465001 1 마이크로 초 / 14 자리
타임 스탬프 [(P)] with Time Zone 날짜와 스포츠 토토 모두 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초 분야에서 유지되는 분수 숫자 수. 에 의해 기본값은 정밀도에 명시적인 바인딩이 없습니다. 허용 범위P는 0에서 6입니다.타임 스탬프and간격타입.

참고 :언제타임 스탬프값 이중 정밀 부동 소수점 번호로 저장됩니다 (현재 기본값), 유효 정밀 한도는 5 월입니다 타임 스탬프 값이 초로 저장되므로 6 미만입니다. 2000-01-01 이후. 마이크로 초 정밀도는 날짜에 대해 달성됩니다 2000-01-01 년 이내에 몇 년 이내에 정밀도는 저하됩니다. 날짜가 더 멀리. 타임 스탬프가 저장 될 때 8 바이트 정수 (컴파일 타임 옵션), 마이크로 초 정밀도는 모든 값 범위에서 사용할 수 있습니다.

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

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

유형스포츠 토토대가있는 스포츠 토토정의됩니다 SQL 표준에 의해, 그러나 정의는 속성을 보여줍니다. 의심스러운 유용성으로 이어집니다. 대부분의 경우의 조합날짜, Time, 스포츠 토토대가없는 타임 스탬프and스포츠 토토대가있는 타임 스탬프완전한 것을 제공해야합니다 모든 애플리케이션에 필요한 범위/스포츠 토토 기능.

유형AbstimeandReltime사용되는 정밀도 유형이 낮습니다 내부. 새로운 유형에서 이러한 유형을 사용하지 않아도됩니다 신청서 및 기존의 신청은 언제 적절한. 이러한 내부 유형 중 일부 또는 전부는 사라질 수 있습니다 향후 릴리스에서.

5.5.1. 날짜/스포츠 토토 입력

날짜 및 스포츠 토토 입력은 거의 모든 합리적으로 허용됩니다. 를 포함한 형식ISO 8601, SQL-전통적, 전통적인PostgreSQL및 기타. 을 위한 일부 형식, 날짜 입력의 월 및 일 순서는 다음과 같습니다. 모호하고 예상을 지정하는 지원이 있습니다 이 분야의 주문. 명령세트 '우리'에 대한 데이터 스타일또는데이터 스타일 설정 '노우 유럽'변형 지정"월 전", 명령'유럽'으로 데이터 스타일 설정변형 설정"월 전".

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

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

타입[(P)] 'value'

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

5.5.1.1. 날짜

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

표 5-10. 날짜 입력

example 설명
1999 년 1 월 8 일 명백한
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 년

5.5.1.2. 타임스

theTime유형은로 지정할 수 있습니다.스포츠 토토또는 as스포츠 토토 스포츠 토토대없이. 선택적 정밀도P0과 6 사이 여야합니다 입력 스포츠 토토 문자의 정밀도로 기본값.

테이블 5-11유효한 표시Time입력.

표 5-11. 스포츠 토토 입력

예제 설명
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과 동일합니다

유형스포츠 토토대가있는 스포츠 토토수락 모든 입력은 또한에 대해 합법적입니다.Time타입, 법적 스포츠 토토대와 함께 추가테이블 5-12.

표 5-12. 스포츠 토토대 입력 스포츠 토토

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

참조테이블 5-13스포츠 토토대의 더 많은 예를 보려면

5.5.1.3. 타임 스탬프

타임 스탬프 유형은타임 스탬프 [ (P)] 스포츠 토토대없이and타임 스탬프 [(P)] with Time Zone. 그냥 쓰기타임 스탬프스포츠 토토대가없는 타임 스탬프.

참고 :이전PostgreSQL7.3, 쓰기타임 스탬프스포츠 토토대가있는 타임 스탬프. 이것은 SQL 사양 준수에 대한 변경.

타임 스탬프 유형에 대한 유효한 입력은 날짜와 스포츠 토토의 연결, 선택 사항이 뒤 따릅니다.ad또는BC, 선택적 스포츠 토토대가 이어집니다. (보다테이블 5-13.) 따라서

1999-01-08 04:05:06

and

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

유효한 값이며ISO8601 표준. 또한 광범위한 형식

1 월 8 일 04:05:06 1999 PST

지원됩니다.

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

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

for스포츠 토토대가있는 타임 스탬프, 내부적으로 저장된 값은 항상 UTC (GMT)에 있습니다. 입력 명시적인 스포츠 토토대가 지정된 값은 변환됩니다. 해당 스포츠 토토대에 적절한 오프셋을 사용하여 UTC에. 아니오 스포츠 토토대는 입력 문자열에 명시되어 있다고 가정합니다. 시스템에 표시된 스포츠 토토대에 있으려면TimeZone매개 변수이며 UTC로 변환됩니다 에 오프셋 사용TimeZoneZone.

언제스포츠 토토대가있는 타임 스탬프값은 출력입니다. 항상 UTC에서 현재의TIMEZONEZone 및 해당 구역에서 현지 스포츠 토토으로 표시됩니다. 스포츠 토토을보기 위해 다른 스포츠 토토대, 어느 쪽이든 변경TimeZone또는 사용at 스포츠 토토대구성 (참조섹션 6.8.3).

타임 스탬프없이 스포츠 토토대스포츠 토토이 지남에 따라 타임 스탬프 존일반적으로타임 스탬프 스포츠 토토대없이값을 가져 가거나 |TimeZone현지 스포츠 토토. 다른 구역 참조는를 사용하여 변환에 대해 지정할 수 있습니다스포츠 토토대에서.

표 5-13. 스포츠 토토대 입력

스포츠 토토대 설명
PST 태평양 표준 스포츠 토토
-8:00 ISO-8601 PST의 오프셋
-800 ISO-8601 PST에 대한 오프셋
-8 ISO-8601 PST의 오프셋

5.5.1.4. 간격

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

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

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

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

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

5.5.1.5. 특별 값

다음SQL-컴퓨터 함수는 다음과 같이 사용할 수 있습니다 해당 데이터 유형의 날짜 또는 스포츠 토토 값 :current_date, current_time, current_timestamp. 후자는 두 사람을 받아들입니다 선택적 정밀 사양. (참조섹션 6.8.4.)

PostgreSQL도 지원합니다 편의를위한 몇 가지 특별 날짜/스포츠 토토 입력 값 표시테이블 5-14. 값Infinity-infinity특별히 대표됩니다 시스템 내부에 동일한 방식으로 표시됩니다. 그러나 다른 사람들은 단순히 표현할 수있는 속기입니다 읽을 때 일반 날짜/스포츠 토토 값으로 변환.

표 5-14. 특별 날짜/스포츠 토토 입력

입력 문자열 설명
epoch 1970-01-01 00 : 00 : 00+00 (UNIX 시스템 스포츠 토토 영)
Infinity 다른 모든 타임 스탬프보다 후반 (사용할 수 없습니다 유형날짜)
-infinity 다른 모든 타임 스탬프보다 초기 (사용할 수 없습니다 유형날짜)
지금 현재 트랜잭션 스포츠 토토
오늘 오늘 자정
내일 내일 자정
어제 어제 자정
Zulu, Allballs, Z 00 : 00 : 00.00 GMT

5.5.2. 날짜/스포츠 토토 산출

출력 형식은 4 가지 스타일 ISO 중 하나로 설정할 수 있습니다. 8601,SQL(잉그레스), 전통적인 PostgreSQL 및 독일어,데이터 스타일 설정. 기본값은입니다.ISO형식. (그만큼SQL표준이 필요합니다 ISO 8601 형식 사용. 의 이름"SQL"출력 형식은 역사적 사고입니다.)테이블 5-15각 출력 스타일의 예를 보여줍니다. 의 출력날짜andTime유형 물론 날짜 또는 스포츠 토토 부분에 따라 주어진 예.

표 5-15. 날짜/스포츠 토토 출력 스타일

스타일 사양 설명 example
ISO ISO 8601/SQL 표준 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

theSQL스타일이 있습니다 유럽 ​​및 비 유럽 (미국) 변형 월이 날을 따르는 지 또는 그 반대의 경우. (보다섹션 5.5.1이 설정이 해석에 어떤 영향을 미치는지 입력 값.)테이블 5-16예를 보여줍니다.

표 5-16. 날짜 명령 규칙

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

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

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

날짜/스포츠 토토 스타일은 사용자가 선택할 수 있습니다.데이터 스타일 설정명령,Datestyle매개 변수postgresql.conf구성 파일, 그리고pgdatestyle환경 변수 서버 또는 클라이언트에서. 서식 함수TO_CHAR(참조섹션 6.7)도 사용할 수 있습니다 날짜/스포츠 토토 출력을 포맷하는보다 유연한 방법으로.

5.5.3. 스포츠 토토대

PostgreSQL노력 와 호환SQL일반적인 사용에 대한 표준 정의. 그러나SQL표준에는 홀수 믹스가 있습니다 날짜 및 스포츠 토토 유형 및 기능. 두 가지 명백한 문제 이다:

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

  • 기본 스포츠 토토대는 일정한 정수로 지정됩니다. 에서 상쇄gmt/UTC. 적응할 수 없습니다 날짜/스포츠 토토 산술을 수행 할 때 일광 절약 스포츠 토토dst경계.

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

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

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

섬기는 사람:

  • theTZ환경 변수 켜짐 서버 호스트는 서버에서 기본 스포츠 토토으로 사용됩니다. 다른 사람이 지정되지 않은 경우.

  • theTimeZone구성 매개 변수를 설정할 수 있습니다postgresql.conf.

  • thepgtz환경 변수, if 클라이언트에서 설정하고 사용합니다.libpqa 보낼 응용 프로그램스포츠 토토대 설정연결시 서버.

  • theSQL명령스포츠 토토대 설정스포츠 토토대를 설정합니다 세션을 위해.

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

참조부록 A사용 가능한 스포츠 토토대 목록.

5.5.4. 내부

PostgreSQLJulian을 사용합니다 모든 날짜/스포츠 토토 계산 날짜. 그들은 좋은 것을 가지고 있습니다 날짜를 올바르게 예측/계산하는 속성 기원전 4713 년 이상, 연도의 길이는 365.2425 일이라고 가정합니다.

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