Postgresql 9.0.23 문서화 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 9.0 : 토토 꽁 머니 데이터 유형 | up | 8 장. 데이터 유형 | PostgreSQL : 문서 : 9.0 : 부울 토토 베이 |
PostgreSQL전체를 지원합니다 세트SQL날짜와 롤 토토 에 표시된 유형표 8-9. 이러한 데이터 유형에서 사용 가능한 작업은에 설명되어 있습니다.PostgreSQL : 문서 : 9.0 : 날짜/스포츠 토토 기능 및 연산자.
표 8-9. 날짜/롤 토토 유형
이름 | 스토리지 크기 | 설명 | 낮은 값 | 높은 가치 | 해상도 |
---|---|---|---|---|---|
타임 스탬프 [(P)] [롤 토토대가없는 ] | 8 바이트 | 날짜와 롤 토토 모두 (롤 토토대 없음) | 4713 BC | 294276 AD | 1 마이크로 초 / 14 자리 |
타임 스탬프 [(P)] 롤 토토대와 함께 | 8 바이트 | 롤 토토대와 롤 토토 구역이있는 날짜와 롤 토토 모두 | 4713 BC | 294276 AD | 1 마이크로 초 / 14 자리 |
날짜 | 4 바이트 | 날짜 (롤 토토 없음) | 4713 BC | 5874897 AD | 1 일 |
롤 토토 [(12662_12665)] [롤 토토대가없는 ] | 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그 행동을 존중합니다. (7.3 이전에 릴리스를 처리했습니다.롤 토토대가있는 타임 스탬프.)
롤 토토, 타임 스탬프, 그리고간격선택적 정밀도를 수락하십시오 값P초 분야에서 유지되는 분수 숫자 수. 에 의해 기본값은 정밀도에 명시적인 바인딩이 없습니다. 허용 범위P|타임 스탬프and간격Types.
참고 :언제타임 스탬프값 8 바이트 정수 (현재 기본값)로 저장됩니다. 마이크로 초 정밀도는 전체 범위에서 사용할 수 있습니다 값. 언제타임 스탬프값은입니다 대신 이중 정밀 부동 소수점 번호로 저장됩니다 (a 더 이상 사용되지 않는 컴파일 타임 옵션), 유효 한계 정밀도는 6보다 작을 수 있습니다.타임 스탬프값은 OR 이전의 초처럼 저장됩니다 자정 이후 2000-01-01. 언제타임 스탬프값은 사용하여 구현됩니다 부동 소수점 수, 마이크로 초 정밀도가 달성됩니다 2000-01-01의 몇 년 이내에 날짜가 있지만 정밀 날짜가 더 멀어지게됩니다. 사용하십시오 플로팅 포인트 DateTimes는 더 큰 범위의를 허용합니다.타임 스탬프표시된 것보다 표현 될 값 위 : 기원전 4713 년부터 5874897 년까지
동일한 컴파일 타임 옵션은 또한를 결정합니다.Timeand간격값은 부동 소수점 번호 또는 8 바이트로 저장됩니다 정수. 부동 소수점의 경우 큰간격값은 크기로 정밀하게 저하됩니다 간격이 증가합니다.
용Time유형, 허용 범위P는 8 바이트 일 때 0에서 6입니다 정수 스토리지가 사용되거나 떠 다니는 경우 0에서 10까지 스토리지가 사용됩니다.
the간격유형에는 추가가 있습니다 옵션, 글을 쓰면 저장된 필드 세트를 제한하는 옵션 이 문구 중 하나 :
연도 월 낮 롤 토토 분 두번째 매년 매일 하루에서 분 하루에서 두 번째 롤 토토에서 분 롤 토토에서 두 번째로 분에서 두 번째로
필드andP지정되어 있습니다.필드포함Second정밀도는에만 적용되므로 초.
유형롤 토토대가있는 롤 토토정의되어 있습니다 SQL 표준에 의해, 그러나 정의는 속성을 보여줍니다. 의심스러운 유용성으로 이어집니다. 대부분의 경우의 조합날짜, Time, 롤 토토대가없는 타임 스탬프및롤 토토대가있는 타임 스탬프완전한 것을 제공해야합니다 모든 애플리케이션에 필요한 범위/롤 토토 기능.
유형Abstime및Reltime사용되는 정밀 유형이 낮습니다 내부. 이러한 유형을 사용하지 않아도됩니다 응용 프로그램; 이러한 내부 유형은 미래에 사라질 수 있습니다 풀어 주다.
날짜 및 롤 토토 입력은 거의 모든 합리적으로 허용됩니다. ISO 8601을 포함한 형식,SQL-컴파일 가능, 전통Postgres및 기타. 일부 형식의 경우 날짜, 매월 및 날짜 입력의 순서는 모호하며 이들의 예상 순서를 지정하는 지원이 있습니다. 전지. 설정Datestyle매개 변수 tomdy선택합니다 월 일년 해석,dmyto 주일 해석을 선택하거나YMD연말 해석을 선택하려면
PostgreSQL더 유연합니다 처리 날짜/롤 토토 입력에서SQL표준 요구 사항. 보다부록 B정확한 구문 분석 날짜/롤 토토 입력 규칙 및 인식 된 텍스트 필드 달, 요일 및 롤 토토대를 포함하여.
날짜 또는 롤 토토 문자 그대로 입력이 필요하다는 것을 기억하십시오. 텍스트 문자열과 같은 단일 따옴표로 둘러싸여 있습니다. 참조섹션 4.1.2.7자세한 내용은SQL다음 구문이 필요합니다
Type[(P)] ''value'
어디P선택 사항입니다 분수 숫자 수를 제공하는 정밀 사양 초 필드에서. 정밀도는에 대해 지정할 수 있습니다.Time, 타임 스탬프및간격유형. 허용 값은입니다 위에서 언급했습니다. 상수에 정밀도가 지정되지 않은 경우 사양, 그것은 기본적으로 문자의 정밀도로 나타납니다 값.
테이블 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모드; 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모드, 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 | Julian Day |
BC 1 월 8 일 | 99 년 BC |
롤 토토 유형은입니다.롤 토토 [ (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롤 토토대 지정 방법에 대한 자세한 내용은
타임 스탬프 유형에 대한 유효한 입력은 날짜와 롤 토토의 연결, 선택 사항 롤 토토대, 선택 사항이 뒤 따릅니다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롤 토토대가있는 타임 스탬프, 내부적으로 저장된 값은 항상 UTC에 있습니다 (Universal 전통적으로 그리니치 Lear Time으로 알려진 조정 된 롤 토토,gmt). 입력 값 명시적인 롤 토토대가 지정된 상태에서 UTC로 변환됩니다. 해당 롤 토토대에 적절한 오프셋. 롤 토토대가없는 경우 입력 문자열에 언급 된 다음 시스템에 의해 표시된 롤 토토대TimeZone매개 변수이며의 오프셋을 사용하여 UTC로 변환됩니다.TimeZoneZone.
언제롤 토토대가있는 타임 스탬프값은 출력입니다. 항상 UTC에서 현재의TimeZoneZone 및 표시 그 지역의 현지 롤 토토으로. 다른 롤 토토에 롤 토토을보기 위해 Zone, 어느 중 하나 변경TimeZone또는 사용 그만큼롤 토토대에서구성 (참조섹션 9.9.3).
간의 변환타임 스탬프없이 롤 토토대and롤 토토이 지남에 따라 타임 스탬프 존일반적으로타임 스탬프 롤 토토대없이값을 가져 가거나 주어야합니다TimeZone현지 롤 토토. 다른 롤 토토대는를 사용하여 변환을 위해 지정할 수 있습니다.at Time Zone.
PostgreSQL지원 편의를위한 몇 가지 특별 날짜/롤 토토 입력 값 표시테이블 8-13. 값Infinityand-infinity특별히 대표됩니다 시스템 내부에 변하지 않으면 표시됩니다. 그러나 다른 사람들은 단순히 표현할 수있는 속기입니다 읽을 때 일반 날짜/롤 토토 값으로 변환됩니다. (안에 특정한,now및 관련 문자열 즉시 특정 롤 토토 값으로 변환됩니다. 읽기.)이 모든 값은 단일로 동봉해야합니다. SQL 명령에서 상수로 사용될 때의 따옴표
표 8-13. 특별 날짜/롤 토토 입력
입력 문자열 | 유효한 유형 | 설명 |
---|---|---|
epoch | 날짜, 타임 스탬프 | 1970-01-01 00 : 00 : 00+00 (UNIX 시스템 롤 토토 영) |
Infinity | 날짜, 타임 스탬프 | 다른 모든 타임 스탬프보다 늦게 |
-infinity | 날짜, 타임 스탬프 | 다른 모든 타임 스탬프보다 일찍 |
now | 날짜, Time, 타임 스탬프 | 현재 트랜잭션의 시작 롤 토토 |
오늘 | 날짜, 타임 스탬프 | 오늘 자정 |
내일 | 날짜, 타임 스탬프 | 내일 자정 |
어제 | 날짜, 타임 스탬프 | 어제 자정 |
Allballs | Time | 00 : 00 : 00.00 UTC |
다음SQL-Compatible 함수도 사용할 수 있습니다 해당 데이터의 현재 롤 토토 값을 얻으려면 유형:current_date, current_time, current_timestamp, LocalTime, LocalTimestamp. 후자 4 명은 선택적 하위 세포 정밀 사양. (보다섹션 9.9.4.) 이들은 SQL 기능이며아님인식 데이터 입력 문자열.
날짜/롤 토토 유형의 출력 형식은 하나로 설정할 수 있습니다. 네 가지 스타일 중 ISO 8601,SQL(잉그레스), 전통Postgres(unix날짜형식) 또는 독일어. 기본값은입니다 그만큼ISO형식. (그만큼SQL표준이 필요합니다 ISO 8601 형식 사용. 의 이름"SQL"출력 형식은 역사적 사고입니다.)테이블 8-14각 출력 스타일의 예를 보여줍니다. 의 출력날짜andTime유형 물론 날짜 또는 롤 토토 부분에 따라 주어진 예.
표 8-14. 날짜/롤 토토 출력 스타일
스타일 사양 | 설명 | example |
---|---|---|
ISO | ISO 8601/SQL 표준 | 1997-12-17 07:37:16-08 |
SQL | 전통적인 스타일 | 12/17/1997 07 : 37 : 16.00 PST |
Postgres | 원본 스타일 | 38192_38222 |
독일어 | 지역 스타일 | 17.12.1997 07 : 37 : 16.00 PST |
inSQL및 Postgres 스타일, DMY 필드 주문이 있었다면 월 전 날 나타납니다. 지정, 그렇지 않으면 월이 하루 전에 나타납니다. (보다섹션 8.5.1이 설정이 해석에 어떤 영향을 미치는지 입력 값.)테이블 8-15예를 보여줍니다.
표 8-15. 날짜 명령 규칙
Datestyle설정 | 입력 순서 | 출력 예 |
---|---|---|
SQL, DMY | day/Month/Year | 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.8)도 사용할 수 있습니다
날짜/롤 토토 출력을 포맷하는보다 유연한 방법으로.
롤 토토대 및 롤 토토대 규칙은 영향을받습니다 지구 기하학뿐만 아니라 정치적 결정. 주변의 롤 토토대 세계는 1900 년대에 다소 표준화되었지만 특히 임의의 변화가 발생하기 쉽습니다 일광 절약 규칙에 대한 존중.PostgreSQL널리 사용되는 Iana를 사용합니다 (OLSON) HISTORICAL에 대한 정보는 롤 토토대 데이터베이스입니다 롤 토토대 규칙. 미래의 롤 토토 동안, 가정은입니다 주어진 롤 토토대에 대한 최신 규칙이 계속 될 것입니다. 미래에 무기한으로 관찰됩니다.
PostgreSQL와 호환SQL일반적인 사용에 대한 표준 정의. 그러나SQL표준에는 홀수 믹스가 있습니다 날짜 및 롤 토토 유형 및 기능. 두 가지 명백한 문제 이다:
비록날짜타입은 가질 수 없습니다 관련 롤 토토대,롤 토토타입 캔. 현실 세계의 롤 토토대는 의미가 거의 없습니다 날짜와 롤 토토과 관련이없는 한 오프셋은 일광 절약 롤 토토에 따라 일년 내내 다를 수 있습니다 경계.
기본 롤 토토대는 상수 숫자로 지정됩니다. 에서 상쇄UTC. 그것은 따라서 일광 절약 롤 토토에 적응하는 것은 불가능합니다 날짜/롤 토토 산술 수행dst경계.
이러한 어려움을 해결하려면 날짜/롤 토토을 사용하는 것이 좋습니다 롤 토토대를 사용할 때 날짜와 롤 토토을 모두 포함하는 유형. 우리 하다not추천 유형 사용롤 토토대가있는 롤 토토postgresql레거시 응용 프로그램 및 준수SQL표준).PostgreSQL가정합니다 날짜 만 포함 된 모든 유형의 현지 롤 토토대 또는 롤 토토.
모든 롤 토토대 인식 날짜와 롤 토토은 내부적으로 저장됩니다UTC. 그들은 변환됩니다 에 지정된 영역의 현지 롤 토토타임 존구성 매개 변수에 표시되기 전에 고객.
PostgreSQL세 가지 형태로 롤 토토 영역을 지정하십시오.
예를 들어 풀 타임 존 이름America/New_York. 인식 된 롤 토토대 이름은에 나열되어 있습니다.PG_TIMEZONE_NAMES보기 (참조섹션 45.60).PostgreSQL이 목적을 위해 널리 사용되는 IANA 롤 토토대 데이터 동일한 롤 토토대 영역 이름도 다른 많은 사람들에 의해 인식됩니다. 소프트웨어.
예를 들어 롤 토토대 약어PST. 그러한 사양은 단지 a를 정의합니다 풀 타임 존과는 대조적으로 UTC의 특정 상쇄 일광 절약 세트를 암시 할 수있는 이름 전환 날짜 규칙도 있습니다. 인정 된 약어 에 나열되어 있습니다.PG_TIMEZONE_ABBREVS보기 (참조섹션 45.59). 너 구성 매개 변수를 설정할 수 없습니다TimeZone또는log_timezone롤 토토대 약어로 약어를 사용할 수 있습니다. 날짜/롤 토토 입력 값 및롤 토토대에서운영자.
롤 토토대 이름과 약어 외에도PostgreSQL수락합니다 양식의 posix 스타일 롤 토토대 지대 사양std오프셋또는std오프셋DST, 여기서std구역 약어입니다.오프셋는 숫자 오프셋입니다 UTC에서 서쪽으로 몇 롤 토토 동안DST선택적 일광 절약입니다 1 롤 토토 앞에 서 있다고 가정 한 구역 약어 주어진 오프셋. 예를 들어, ifest5edt아직 인정 된 영역이 아닙니다 이름, 그것은 받아 들여질 것이며 기능적입니다 미국 동해안 롤 토토에 해당합니다. 언제 a Daylight-Savings Zone 이름이 존재하며 같은 일광 절약 전환에 따라 사용됩니다 Iana Time Zone 데이터베이스에 사용되는 규칙posixrules입력. 표준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 오프셋을 의미하는 롤 토토대 약어 다른 롤 토토; 예를 들어, 모스크바에서MSK몇 년 동안 UTC+3, UTC+4 인치를 의미했습니다 기타.PostgreSQL해석 그러한 약어는 그들이 의미했던 것 (또는 있던 것)에 따른 것입니다 가장 최근에는) 지정된 날짜에; 그러나와 마찬가지로EST위의 예, 그렇지 않습니다 그 날짜의 현지 시민 롤 토토과 반드시 동일합니다.
POSIX 스타일의 롤 토토대 기능이 조심해야합니다. 가짜 입력을 조용히 받아 들일 수 있습니다. 구역 약어의 합리성을 확인하십시오. 을 위한 예,foobar0으로 롤 토토대를 설정의지 시스템을 효과적으로 사용하여 다소 특이한 작업을 수행합니다 UTC에 대한 약어. 명심해야 할 또 다른 문제는 posix 롤 토토대 이름, 긍정적 인 오프셋이 위치에 사용됩니다West48608_48646PostgreSQL긍정적 인 롤 토토대가 상쇄되는 ISO-8601 컨벤션을 따릅니다 이다EastOF 그리니치.
모든 경우에 롤 토토대 이름과 약어가 있습니다 사례에 비해 인식. (이것은의 변화입니다.PostgreSQL이전 버전 8.2, 일부 컨텍스트에서는 사례에 민감했지만 그렇지 않았습니다 기타.)
타임 존 이름이나 약어는 거의 연결되지 않습니다 서버; 저장된 구성 파일에서 얻습니다 아래에.../share/timezone/and.../share/timezonesets/의 설치 디렉토리 (참조섹션 B.3).
theTimezone구성 매개 변수를 파일에서 설정할 수 있습니다postgresql.conf또는 다른 것 에 설명 된 표준 방법18 장. 몇 가지도 있습니다 설정하는 특별한 방법 :
ifTimeZonepostgresql.conf또는 서버로 명령 줄 옵션, 서버는 값을 사용하려고 시도합니다 의TZ환경 변수 AS 기본 롤 토토대. 만약에TZ그렇지 않습니다 정의되거나 알려진 롤 토토대 이름이 아닙니다PostgreSQL, 서버 운영 체제의 기본 롤 토토을 결정하려고 시도합니다 C 라이브러리 기능의 동작을 확인하여 영역localtime (). 기본 롤 토토대 중 가장 가까운 경기로 선택됩니다PostgreSQL의 알려진 롤 토토대. (이것들 규칙은 또한의 기본값을 선택하는 데 사용됩니다.log_timezone, 지정되지 않은 경우.)
theSQL명령롤 토토대 설정롤 토토대를 설정합니다 세션을 위해. 이것은의 대체 철자입니다.롤 토토대 설정더 SQL-Spec 호환 구문.
thepgtz환경 변수입니다 사용libpq고객에게 a 보내기롤 토토대 설정명령으로 연결시 서버.
간격값을 사용하여 작성할 수 있습니다 다음 장점 구문 :
[@]수량 Unit[수량 Unit...] [방향]
어디수량숫자입니다 (아마도 서명);Unitis마이크로 초, millisecond, Second, Minute, Hour, day, 주, Month, Year, 10 년, Century, Millennium, 또는 이 단위의 약어 또는 복수;방향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 또는의"대체 형식"섹션 4.4.3.3. 지정자가있는 형식은 다음과 같습니다.
P수량 Unit[ 수량 Unit ...] [t [ 수량 Unit ...]]
문자열은 a로 시작해야합니다.P및 a 포함 할 수 있습니다.T롤 토토 단위. 사용 가능한 단위 약어가 제공됩니다 안에테이블 8-16. 장치는 생략 될 수 있으며 주문하지만 하루보다 작은 단위는 이후에 나타나야합니다.T. 특히의 의미M이전 또는 이전 의지 여부에 따라 다릅니다 후에t.
대체 형식 :
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해석이 사용됩니다. 에게 모호성을 피하면 명시 적 표시를 첨부하는 것이 좋습니다. 필드가 음수 인 경우 각 필드.
내부간격값이 저장됩니다
몇 달, 일, 초. 이것은 숫자이기 때문에 수행됩니다
한 달의 며칠은 다양하며 하루는 23 롤 토토 또는 25 롤 토토을 가질 수 있습니다.
일광 절약 롤 토토 조정이 관련되어 있습니다. 달과
Days Fields는 정수이며 초 필드는 저장할 수 있습니다.
분수. 간격은 일반적으로 상수에서 생성되기 때문입니다
현 또는타임 스탬프뺄셈, 이것
스토리지 방법은 대부분의 경우 잘 작동합니다. 기능Justify_Days
andJustify_hours
조정할 수 있습니다
정상 범위를 넘어서는 날과 롤 토토.
장황한 입력 형식 및 일부 분야에서 소형 입력 형식, 필드 값은 분수 부품을 가질 수 있습니다. 예를 들어'1.5 주'또는'01 : 02 : 03.45 '. 이러한 입력은 스토리지의 적절한 달, 일 및 초. 이것이 분수 된 달의 수를 초래할 때 날, 분수는 전환 계수 1 개월 = 30 일 및 1 일 = 24 롤 토토. 을 위한 예,'1.5 개월'1 개월이됩니다 그리고 15 일. 몇 초만 분수 된 것으로 표시됩니다 산출.
테이블 8-17유효한 몇 가지 예를 보여줍니다간격입력.
간격 유형의 출력 형식은 중 하나로 설정할 수 있습니다. 네 가지 스타일sql_standard, Postgres, postgres_verbose또는ISO_8601, 명령 사용IntervalStyle 설정. 기본값은입니다.Postgres형식.테이블 8-18각 출력 스타일의 예를 보여줍니다.
thesql_standard스타일 제작 SQL 표준의 사양을 준수하는 출력 간격 값이 충족되는 경우 간격 문자 문자열 표준의 제한 (연말 전용 또는 주간 양성 및 음성 성분의 혼합 없이만). 그렇지 않으면 출력은 표준 연도 문자처럼 보입니다 문자열과 명시 적으로 하루 종일 문자열이 이어집니다 혼합 서명 간격을 명확하게하기 위해 추가 된 표지판.
출력Postgres스타일 의 출력과 일치합니다.PostgreSQL8.4 이전에 릴리스Datestyle매개 변수가 설정되었습니다ISO.
출력postgres_verbose스타일은의 출력과 일치합니다.PostgreSQL8.4 이전에 출시 될 때Datestyle매개 변수가 설정되었습니다 비ISO출력.
출력ISO_8601스타일 일치"형식 지정자 "ISO의 4.4.3.2 절에 설명되어 있습니다 8601 표준.
PostgreSQLJulian을 사용합니다 모든 날짜/롤 토토 계산 날짜. 이것은 유용합니다 기원전 4713 년부터 FAR까지 올바르게 계산 날짜의 속성 미래의 길이는 연도는 365.2425 일입니다.
19 세기 이전의 날짜 규칙 흥미로운 독서이지만 보증하기에 충분히 일관되지 않습니다 날짜/롤 토토 핸들러로 코딩.