두 가지 기본적인 사설 토토 사이트 및 시간 측정이 있습니다. 절대 시계 시간 및 상대 시간 간격. 두 수량 시간 자체와 마찬가지로 연속성과 부드러움을 입증해야합니다.Postgres2 개의 기본을 공급합니다 사용자 지향 사설 토토 사이트 및 시간 유형,DateTimeandTimespan, AS 뿐만 아니라 관련SQL92타입타임 스탬프, 간격, 사설 토토 사이트and시간.
향후 릴리스에서dateTimeandTimespan|SQL92types타임 스탬프, 간격. 다른 사설 토토 사이트 및 시간 유형도 주로 역사적으로 사용할 수 있습니다. 이유.
표 8-7.Postgres사설 토토 사이트/시간 유형
사설 토토 사이트/시간 유형 | 스토리지 | 추천 | 설명 |
---|---|---|---|
Abstime | 4 바이트 | 원래 사설 토토 사이트와 시간 | 제한 범위 |
사설 토토 사이트 | 4 바이트 | SQL92타입 | 넓은 범위 |
dateTime | 8 바이트 | 최고의 일반 사설 토토 사이트와 시간 | 넓은 범위, 높은 정밀도 |
간격 | 12 바이트 | SQL92타입 | 타임 스팬에 해당 |
Reltime | 4 바이트 | 원래 시간 간격 | 제한 범위, 낮음 정도 |
TIME | 4 바이트 | SQL92타입 | 넓은 범위 |
Timespan | 12 바이트 | 최고의 일반 시간 간격 | 넓은 범위, 높은 정밀도 |
타임 스탬프 | 4 바이트 | SQL92타입 | 제한 범위 |
표 8-8.Postgres사설 토토 사이트/시간 범위
사설 토토 사이트/시간 유형 | 초기 | 최신 | 해상도 |
---|---|---|---|
Abstime | 1901-12-14 | 2038-01-19 | 1 초 |
사설 토토 사이트 | 4713 BC | 32767 AD | 1 일 |
DateTime | 4713 BC | 1465001 AD | 1 마이크로 세크에서 14 자리 |
간격 | -178000000 년 | 178000000 년 | 1 MicroSec |
Reltime | -68 년 | +68 년 | 1 초 |
Time | 00:00:00.00 | 23:59:59.99 | 1 MicroSec |
타임 스팬 | -178000000 년 | 178000000 년 | 1 MicroSec (14 자리) |
타임 스탬프 | 1901-12-14 | 2038-01-19 | 1 초 |
Postgresendevours가 될 것입니다 호환SQL92정의에 대한 정의 일반적인 사용. 그만큼SQL92Standard Has 사설 토토 사이트와 시간 유형 및 기능의 이상한 혼합. 두 가지 명백한 문제는 다음과 같습니다.
비록사설 토토 사이트타입은 그렇지 않습니다 관련 시간대가 있습니다.Time타입 캔든
기본 시간대는 일정한 정수로 지정됩니다. GMT/UTC에서 상쇄
그러나 실제 세계의 시간대는 의미가 없을 수 없습니다. 오프셋이 다를 수있는 시간뿐만 아니라 사설 토토 사이트와 관련이 있습니다. 일광 절약 시간 경계와 함께 연중 내내.
이러한 어려움을 해결하려면Postgres사설 토토 사이트 와만 시간 영역을 연관시킵니다 사설 토토 사이트와 시간을 모두 포함하고 현지인을 가정하는 시간 유형 사설 토토 사이트 또는 시간 만 포함 된 모든 유형의 시간. 또한 시간대 지원은 기본 운영 체제 시간대에서 파생됩니다. 기능, 따라서 일광 절약 시간 및 기타를 처리 할 수 있습니다. 예상되는 행동.
향후 릴리스에서 사설 토토 사이트/시간 유형의 수가 줄어 듭니다. 현재의 구현으로dateTime타임 스탬프, 타임 스팬간격및 (아마도)AbstimeandReltime유리한 감가 상각타임 스탬프and간격. 그만큼 의 사설 토토 사이트/시간 정의의 더 많은 비전 기능SQL92표준이 될 가능성이 없습니다 추구.
출력 형식은 4 가지 스타일 중 하나 인 ISO-8601,로 설정할 수 있습니다.SQL(Ingres), 전통적인 우편둥이, 그리고 독일어.
표 8-9.Postgres사설 토토 사이트 스타일
스타일 사양 | 설명 | 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) 변형은 월이 따르는 지 여부를 결정합니다 데이 또는 Vera Versa.
표 8-10.Postgres사설 토토 사이트 주문 규칙
스타일 사양 | 설명 | example |
---|---|---|
유럽 | 지역 컨벤션 | 17/12/1997 15 : 37 : 16.00 MET |
NANUROOPEAN | 지역 컨벤션 | 12/17/1997 07 : 37 : 16.00 PST |
US | 지역 컨벤션 | 12/17/1997 07 : 37 : 16.00 PST |
사설 토토 사이트/시간의 모양에 영향을 미치는 몇 가지 방법이 있습니다. 유형 :
백엔드가 사용하는 PGDATESTYLE ENVIRNING 변수 우체국 마스터 스타트 업에서 직접.
프론트 엔드에서 사용하는 PGDATESTYLE 환경 변수 세션 스타트 업에 libpq.
데이터 스타일 설정SQL명령.
forPostgresv6.4 (및 이전) 기본 사설 토토 사이트/시간 스타일은 "비 유럽 전통 우편둥이"입니다. 향후 릴리스에서 기본값은 ISO-8601이 될 수 있습니다 사설 토토 사이트 사양 모호성 및 Y2K Collation을 완화합니다 문제.
Postgres시간대를 얻습니다 기본 운영 체제의 지원. 모든 사설 토토 사이트와 시간 UTC (Universal Coordinated Time)에서 내부적으로 저장됩니다. GRINWICH MEAR TIME (GMT)으로 알려져 있습니다. 시간이 변환됩니다 데이터베이스 서버의 현지 시간으로 클라이언트 프론트 엔드이므로 기본적으로 서버 시간대에 있습니다.
시간대 행동에 영향을 미치는 몇 가지 방법이 있습니다.
백엔드에서 직접 사용하는 TZ 환경 변수 기본 시간대로 우체국 마스터 스타트 업.
libpq는 시간대 정보를 백엔드로 보냅니다. 연결.
theSQL명령시간대 설정세션.
잘못된 시간대가 지정되면 시간대가 GMT가됩니다. (어쨌든 대부분의 시스템에서).
일반 사용 사설 토토 사이트 및 시간은 광범위한 스타일을 사용하여 입력됩니다. 등방성 포함,SQL-컴파일 가능, 전통Postgres및 기타 순열 및 시간. 해석이 모호 할 수있는 경우 (꽤 많은 전통적인 스타일의 사설 토토 사이트 사양으로 가능)Postgres스타일 설정을 사용합니다 모호성을 해결하십시오.
대부분의 사설 토토 사이트 및 시간 유형 데이터 입력에 대한 코드를 공유합니다. 그것들을 위해 입력이 다양한 스타일을 가질 수 있습니다. 을 위한 숫자 사설 토토 사이트 표현, 유럽 및 미국 협약이 가능합니다 다르고, 적절한 해석은를 사용하여 얻습니다.데이터 스타일 설정데이터를 입력하기 전에 명령. 스타일 설정은 다양한 스타일의 사용을 배제하지 않습니다. 입력을 위해; 주로 출력 스타일을 결정하고 모호성을 해결하려면
특수 값 'current', 'infinity'및`-infinity '입니다 제공. `Infinity '는 다른 유효한 것보다 늦게 시간을 지정합니다 시간,`-infinity '는 다른 유효한 것보다 일찍 시간을 지정합니다. 시간. `현재 '는 현재 시간이되어야 함을 나타냅니다 이 값이 계산에 나타날 때마다 대체됩니다. 그만큼 문자열`now ',`오늘',`어제 ','내일 '및`epoch'가 될 수 있습니다 시간 값을 지정하는 데 사용됩니다. '지금'은 현재 거래를 의미합니다 시간은 현재 시간이 즉시 대체되었습니다. `epoch '는 1970 년 1 월 1 일 00:00:00을 의미합니다 Gmt.
표 8-11.Postgres사설 토토 사이트/시간 특별 상수
Constant | 설명 |
---|---|
현재 | 현재 거래 시간, 연기 |
epoch | 1970-01-01 00 : 00 : 00+00 (unix 시스템 시간 제로) |
Infinity | 다른 유효한 것보다 후반 타임스 |
-infinity | 다른 유효한 것보다 초기 타임스 |
Invalid | 불법 입력 |
now | 현재 거래 시간 |
오늘 | 오늘 자정 |
내일 | 내일 자정 |
어제 | 어제 자정 |
일반 사용 사설 토토 사이트 및 시간은 광범위한 스타일을 사용하여 입력됩니다. 등방성 포함,SQL-전통적, 전통적인Postgres( "절대 시간"섹션 참조) 및 사설 토토 사이트와 시간의 다른 순열. 출력 스타일이 될 수 있습니다 동합성,SQL-Compatible, Or 전통적인Postgres와 호환되는 기본 설정Postgresv6.0.
dateTime를 사용하여 지정됩니다 다음 구문 :
연말 월간 [시간 : 분 : 두 번째] [AD, BC] [TimeZone] yearmonthday [시간 : 분 : 두 번째] [AD, BC] [TimeZone] 월 일 [시간 : 분 : 2 세] 년 [AD, BC] [TimeZone] 어디 연도는 기원전 4013 년입니다 달은 1 월, 2 월, ..., 12 월 또는 1, 2, ..., 12입니다. 하루는 1, 2, ..., 31입니다 시간은 00, 02, ..., 23입니다 분은 00, 01, ..., 59입니다 두 번째는 00, 01, ..., 59입니다 (도약의 경우 60) Timezone은 3 자 또는 GMT에 ISO 오프셋입니다
유효한 사설 토토 사이트는 11 월 13 일 00:00:00 4013 BC GMT에서 미래. Timezones는 세 문자입니다 (예 : "GMT"또는 "PST") 또는 ISO 호환 오프셋에 GMT (예 : "-08"또는 "-08 : 00" 태평양 표준 시간). 사설 토토 사이트는 그리니치에 내부적으로 저장됩니다 평균 시간. 입력 및 출력 루틴은 시간을 로컬로 변환합니다 서버의 시간대.
일반 사용 시간 범위는 광범위한 구문을 사용하여 입력됩니다. 등방성 포함,SQL-전통적, 전통적인Postgres( "상대 시간"섹션 참조) 및 기타 시간 범위. 출력 형식이 될 수 있습니다 동합성,SQL-Compatible, Or 전통적인Postgres기본 설정Postgres-compatible. 몇 달과 몇 년은 다음과 같습니다 "정 성적"시간 간격 및 별도로 저장됩니다 일 또는 시간과 같은 다른 "정량적"시간 간격. 사설 토토 사이트 산술, 질적 시간 단위는 인스턴스화됩니다 관련 사설 토토 사이트 또는 시간의 맥락.
시간 범위는 다음 구문으로 지정됩니다 :
수량 단위 [수량 단위 ...] [방향] @ 수량 단위 [방향] 어디 수량은 ...,`-1 ',`0',`1 ',`2', ... 단위는 '두 번째',`minute ','hour ',`day',`주 ','월 ','달 ',`year', '10 년', '세기', 밀레니엄 '또는이 단위의 약어 또는 복수. 방향은 '전'입니다.
절대 시간 (Abstime)는 a 제한 범위 (+/- 68 년) 및 제한-정밀 (1 초) 사설 토토 사이트 데이터 유형.dateTime선호 될 수 있습니다. 정밀도로 더 큰 범위를 다루기 때문에
절대 시간은 다음 구문을 사용하여 지정됩니다 :
Month Day [시간 : 분 : 두 번째] [TimeZone] 어디 달은 1 월, 2 월, ..., 12 월입니다 하루는 1, 2, ..., 31입니다 시간은 01, 02, ..., 24입니다 분은 00, 01, ..., 59입니다 두 번째는 00, 01, ..., 59입니다 연도는 1901, 1902, ..., 2038입니다.
유효한 사설 토토 사이트는 12 월 13 일 20:45:53 1901 gmt ~ 1 월 19 일 03:14:04 2038 Gmt.
모든 특수 값이 허용dateTime"절대 시간"도 허용됩니다.역사적 노트 :버전 3.0에서 시간은 더 이상 아닙니다 그리니치 평균 시간을 사용하여 읽고 작성; 입력 및 출력 현지 시간대에 대한 루틴 기본값.
상대 시간Reltimeis 제한 범위 (+/- 68 년) 및 제한 (1 초) 시간 스팬 데이터 유형.Timespan선호, 더 큰 정밀도로 더 큰 범위를 다루기 때문에 더 중요한 것은 상대 단위를 구별 할 수 있습니다 (달과 년) 및 정량 단위 (일, 시간 등). 대신, Reltime은 몇 달 동안 정확히 30 일이되도록 강요해야하므로 시간 산술이 항상 예상대로 작동하지는 않습니다. 예를 들어 추가 오늘날의 1 년 연도는 오늘의 사설 토토 사이트 1을 생산하지 않습니다. 지금부터 1 년이 지났지 만 오늘부터 360 일 사설 토토 사이트.
Reltime입력 및 출력 주식 다른 시간 범위 유형의 루틴. 섹션Timespan이것을 자세히 설명합니다.
이것은 현재 한정된 범위의 절대 시간입니다 삼각 데이터 유형과 비슷합니다. 일반 입력 파서를 공유합니다 다른 사설 토토 사이트/시간 유형으로. 향후 릴리스에서는이 유형이 릴리스됩니다 의 능력 흡수dateTime타입 및SQL92규정 준수.
타임 스탬프는 동일한 것을 사용하여 지정됩니다 for에 대한 구문DateTime.
간격isSQL92현재 맵핑 된 데이터 유형Timespan Postgres데이터 유형.
시간 범위는 다음과 같이 지정됩니다.
[ 'Abstime' 'Abstime']]] 어디 Abstime은 절대 시간 형식의 시간입니다.'current', 'infinity'및와 같은 특수 삼각 값 `-infinity '를 사용할 수 있습니다.