표 9.33날짜/스포츠 토토 값 처리에 사용할 수 있는 함수를 표시하며 자세한 내용은 다음 하위 섹션에 표시됩니다.표 9.32기본 산술 연산자의 동작을 설명합니다(+, *등). 서식 지정 기능은 다음을 참조하세요.PostgreSQL : 문서 : 개발 : 9.8. 데이터 유형 토토 커뮤니티 토토 커뮤니티 기능. 의 날짜/스포츠 토토 데이터 유형에 대한 배경 정보를 잘 알고 있어야 합니다.PostgreSQL : 문서 : 개발 : 8.5. 날짜/토토 캔 유형.
또한, 다음에 표시된 일반적인 비교 연산자는표 9.1날짜/스포츠 토토 유형에 사용할 수 있습니다. 날짜 및 타임스탬프(스포츠 토토대 포함 또는 제외)는 모두 비교할 수 있는 반면, 스포츠 토토(스포츠 토토대 포함 또는 제외) 및 간격은 동일한 데이터 유형의 다른 값과만 비교할 수 있습니다. 스포츠 토토대가 없는 타임스탬프와 스포츠 토토대가 있는 타임스탬프를 비교할 때 전자 값은 다음에서 지정한 스포츠 토토대에 제공되는 것으로 가정됩니다.스포츠 토토대구성 매개변수이며 후자 값(내부적으로 이미 UTC임)과의 비교를 위해 UTC로 회전됩니다. 마찬가지로 날짜 값은 자정을 나타내는 것으로 가정됩니다.스포츠 토토대타임스탬프와 비교할 때 영역.
아래에 설명된 모든 함수와 연산자는 다음을 수행합니다.스포츠 토토또는타임스탬프입력은 실제로 두 가지 변형으로 제공됩니다. 하나는 다음과 같습니다.스포츠 토토대 포함 스포츠 토토또는스포츠 토토대가 포함된 타임스탬프그리고 걸리는 것스포츠 토토대가 없는 스포츠 토토또는스포츠 토토대가 없는 타임스탬프. 간결성을 위해 이러한 변형은 별도로 표시되지 않습니다. 또한,+그리고*연산자는 교환 가능한 쌍으로 제공됩니다(예: 둘 다날짜 + 정수그리고정수 + 날짜); 우리는 각 쌍 중 하나만 표시합니다.
표 9.32. 날짜/스포츠 토토 연산자
|
운영자 설명 예 |
|---|
|
날짜에 일 수 추가
|
|
날짜에 간격 추가
|
|
날짜에 스포츠 토토 추가
|
|
간격 추가
|
|
타임스탬프에 간격 추가
|
|
스포츠 토토에 간격 추가
|
|
간격 무효화
|
|
날짜를 빼서 경과된 일수를 산출
|
|
날짜에서 일수 빼기
|
|
날짜에서 간격 빼기
|
|
스포츠 토토 빼기
|
|
스포츠 토토에서 간격 빼기
|
|
타임스탬프에서 간격 빼기
|
|
간격 빼기
|
|
타임스탬프 빼기(24스포츠 토토 간격을 일수로 변환, 유사하게
|
|
간격에 스칼라를 곱함
|
|
간격을 스칼라로 나누기
|
표 9.33. 날짜/스포츠 토토 함수
|
기능 설명 예제 |
|---|
|
인수를 빼서 a를 생성합니다.“상징적”단순한 일이 아닌 연도와 월을 사용한 결과
|
|
다음에서 인수 빼기
|
|
현재 날짜 및 스포츠 토토(문 실행 중 변경); 참조섹션 9.9.5
|
|
현재 날짜; 참조섹션 9.9.5
|
|
현재 스포츠 토토; 참조섹션 9.9.5
|
|
현재 스포츠 토토, 정밀도가 제한됨. 참조섹션 9.9.5
|
|
현재 날짜 및 스포츠 토토(현재 거래 시작); 참조섹션 9.9.5
|
|
현재 날짜 및 스포츠 토토(현재 거래 시작), 제한된 정밀도; 참조섹션 9.9.5
|
|
추가
|
|
Bin 입력은 지정된 원점과 정렬된 지정된 간격으로 입력됩니다. 보다섹션 9.9.3
|
|
타임스탬프 하위 필드 가져오기(동등함
|
|
간격 하위 필드 가져오기(동등함
|
|
빼기
|
|
지정된 정밀도로 자릅니다. 참조섹션 9.9.2
|
|
지정된 스포츠 토토대에서 지정된 정밀도로 자릅니다. 참조섹션 9.9.2
|
|
지정된 정밀도로 자릅니다. 참조섹션 9.9.2
|
|
타임스탬프 하위 필드 가져오기; 참조섹션 9.9.1
|
|
간격 하위 필드 가져오기; 참조섹션 9.9.1
|
|
유한 날짜 테스트(+/-무한대 아님)
|
|
유한한 타임스탬프 테스트(+/-무한대 아님)
|
|
유한 간격 테스트(+/-무한대가 아님)
|
|
간격을 조정하여 30일 기간을 월로 변환
|
|
간격을 조정하여 24스포츠 토토 기간을 일수로 변환
|
|
다음을 사용하여 간격 조정
|
|
현재 스포츠 토토; 참조섹션 9.9.5
|
|
현재 스포츠 토토, 정밀도가 제한됨. 보다섹션 9.9.5
|
|
현재 날짜 및 스포츠 토토(현재 거래 시작); 참조섹션 9.9.5
|
|
현재 날짜 및 스포츠 토토(현재 트랜잭션 시작), 제한된 정밀도. 참조섹션 9.9.5
|
|
연도, 월, 일 필드에서 날짜 생성(음수 연도는 BC를 나타냄)
|
|
연도, 월, 주, 일, 시, 분, 초 필드에서 간격을 생성하며 각 필드의 기본값은 0입니다.
|
|
시, 분, 초 필드에서 스포츠 토토 생성
|
|
연도, 월, 일, 시, 분, 초 필드에서 타임스탬프 생성(음수 연도는 BC를 나타냄)
|
|
연도, 월, 일, 시, 분, 초 필드의 스포츠 토토대가 포함된 타임스탬프를 생성합니다(음수 연도는 BC를 나타냄). 만일
|
|
현재 날짜 및 스포츠 토토(현재 거래 시작); 참조섹션 9.9.5
|
|
범위 내 임의의 값을 반환합니다. 이 함수는 다음에 나열된 함수와 동일한 의사 난수 생성기를 사용합니다.표 9.6, 호출에도 동일한 방식으로 응답
|
|
현재 날짜 및 스포츠 토토(현재 명령문의 시작); 참조섹션 9.9.5
|
|
현재 날짜 및 스포츠 토토(예:
|
|
현재 날짜 및 스포츠 토토(현재 거래 시작); 참조섹션 9.9.5
|
|
Unix 시대(1970-01-01 00:00:00+00 이후의 초)를 스포츠 토토대가 있는 타임스탬프로 변환
|
(시작1,end1) 중복(시작2,end2) (시작1,길이1) 중복(시작2,길이2)
이 표현식은 두 기간(종료점에 의해 정의됨)이 겹치면 참이고, 겹치지 않으면 거짓입니다. 엔드포인트는 날짜, 스포츠 토토 또는 타임스탬프 쌍으로 지정할 수 있습니다. 또는 날짜, 스포츠 토토 또는 타임스탬프 뒤에 간격이 오는 형태로 표시됩니다. 한 쌍의 값이 제공되면 시작 또는 끝이 먼저 기록될 수 있습니다.겹침자동으로 쌍의 이전 값을 시작으로 사용합니다. 각 기간은 반 개방 간격을 나타내는 것으로 간주됩니다.시작 <= 스포츠 토토 < 끝, 그렇지 않은 경우시작그리고끝동일한 경우 해당 단일 순간을 나타냅니다. 이는 예를 들어 공통 엔드포인트만 있는 두 기간이 겹치지 않음을 의미합니다.
선택 (날짜 '2001-02-16', 날짜 '2001-12-21') 겹침
(날짜 '2001-10-30', 날짜 '2002-10-30');결과:참선택(날짜 '2001-02-16', 간격 '100일') 겹침
(날짜 '2001-10-30', 날짜 '2002-10-30');결과:거짓선택 (날짜 '2001-10-29', 날짜 '2001-10-30') 겹침
(날짜 '2001-10-30', 날짜 '2001-10-31');결과:거짓선택 (날짜 '2001-10-30', 날짜 '2001-10-30') 겹침
(날짜 '2001-10-30', 날짜 '2001-10-31');결과:참
추가할 때간격값을 (또는 빼기간격값) a타임스탬프또는스포츠 토토대가 포함된 타임스탬프값, 월, 일 및 마이크로초 필드간격값이 차례로 처리됩니다. 첫째, 0이 아닌 월 필드는 지정된 월 수만큼 타임스탬프 날짜를 앞당기거나 감소시켜 새 달의 끝을 지나지 않는 한 날짜를 동일하게 유지합니다. 이 경우 해당 월의 마지막 날짜가 사용됩니다. (예를 들어 3월 31일에 1개월을 더하면 4월 30일이 되고, 3월 31일에 2개월을 더하면 5월 31일이 됩니다.) 그런 다음 날짜 필드는 타임스탬프 날짜를 표시된 일 수만큼 앞당기거나 줄입니다. 이 두 단계 모두에서 현지 스포츠 토토은 동일하게 유지됩니다. 마지막으로 0이 아닌 마이크로초 필드가 있으면 문자 그대로 더하거나 뺍니다. a에서 산술을 수행할 때스포츠 토토대가 포함된 타임스탬프DST를 인식하는 스포츠 토토대의 값은 더하거나 빼는 것을 의미합니다.간격 '1일'반드시 더하기나 빼기와 같은 결과가 나오는 것은 아닙니다간격 '24스포츠 토토'. 예를 들어 세션 스포츠 토토대가미국/덴버:
스포츠 토토대 '2005-04-02 12:00:00-07' + 간격 '1일'을 포함하는 타임스탬프 선택;결과:2005-04-03 12:00:00-06스포츠 토토대 '2005-04-02 12:00:00-07' + 간격 '24스포츠 토토'을 포함하는 타임스탬프 선택;결과:2005-04-03 13:00:00-06
이 일은 일광 절약 스포츠 토토제 변경으로 인해 한 스포츠 토토이 건너뛰었기 때문에 발생합니다.2005-04-03 02:00:00스포츠 토토대미국/덴버.
다음 내용에는 모호함이 있을 수 있습니다.개월에서 반환한 필드나이달마다 일수가 다르기 때문입니다.PostgreSQL의 접근 방식은 부분 월을 계산할 때 두 날짜 중 빠른 날짜의 월을 사용합니다. 예를 들어,나이('2004-06-01', '2004-04-30')4월을 사용하여 수익을 얻습니다1월 1일, May를 사용하면 결과가 나옵니다1월 2일5월은 31일인 반면 4월은 30일밖에 없기 때문입니다.
날짜와 타임스탬프를 빼는 것도 복잡할 수 있습니다. 뺄셈을 수행하는 개념적으로 간단한 방법 중 하나는 다음을 사용하여 각 값을 초 수로 변환하는 것입니다.추출(EPOCH FROM ...), 그런 다음 결과를 뺍니다. 이것은 수를 생성합니다초두 값 사이. 이는 매월 일수, 스포츠 토토대 변경 및 일광 절약 스포츠 토토 조정을 조정합니다. 를 사용하여 날짜 또는 타임스탬프 값 빼기“-”연산자는 일수(24스포츠 토토)와 값 사이의 스포츠 토토/분/초를 반환하여 동일한 조정을 수행합니다.나이함수는 필드별 뺄셈을 수행한 다음 음수 필드 값을 조정하여 연도, 월, 일 및 시/분/초를 반환합니다. 다음 쿼리는 이러한 접근 방식의 차이점을 보여줍니다. 샘플 결과는스포츠 토토대 = '미국/동부'; 사용된 두 날짜 사이에 일광 절약 스포츠 토토제 변경이 있습니다.
선택 추출(EPOCH FROM 타임스탬프tz '2013-07-01 12:00:00') -
EXTRACT(timestamptz '2013-03-01 12:00:00'의 EPOCH);결과:10537200.000000SELECT (EXTRACT(EPOCH FROM 타임스탬프tz '2013-07-01 12:00:00') -
추출(타임스탬프tz '2013-03-01 12:00:00'의 EPOCH))
/ 60 / 60 / 24;결과:121.9583333333333333SELECT 타임스탬프tz '2013-07-01 12:00:00' - 타임스탬프tz '2013-03-01 12:00:00';결과:121일 23:00:00SELECT age(timestamptz '2013-07-01 12:00:00', timestamptz '2013-03-01 12:00:00');결과:4개월
추출, 날짜_부분 #추출(필드발신출처)
그추출함수는 날짜/스포츠 토토 값에서 연도 또는 스포츠 토토과 같은 하위 필드를 검색합니다.출처유형의 값 표현식이어야 합니다.타임스탬프, 날짜, 스포츠 토토또는간격. (타임스탬프와 스포츠 토토은 스포츠 토토대가 있거나 없을 수 있습니다.)필드은 소스 값에서 추출할 필드를 선택하는 식별자 또는 문자열입니다. 모든 필드가 모든 입력 데이터 유형에 유효한 것은 아닙니다. 예를 들어, 하루보다 작은 필드는 a에서 추출할 수 없습니다.날짜, 하루 이상의 필드는 a에서 추출할 수 없습니다.스포츠 토토.추출함수는 유형의 값을 반환합니다.숫자.
다음은 유효한 필드 이름입니다:
세기세기; 에 대한간격값, 연도 필드를 100으로 나눈 값
추출 선택(타임스탬프 '2000-12-16 12:21:13'의 세기);결과:20추출 선택(타임스탬프 '2001-02-16 20:38:40'의 세기);결과:21추출 선택('0001-01-01 AD'로부터의 세기);결과:1추출 선택('0001-12-31 BC'부터 세기);결과:-1추출 선택('2001년' 간격의 세기);결과:20
일월의 일자(1-31); 에 대한간격값, 일수
추출물 선택(타임스탬프 '2001-02-16 20:38:40'의 날짜);결과:16추출 선택(간격 '40일 1분'의 날짜);결과:40
10년연도 필드를 10으로 나눈 값
추출 선택(타임스탬프 '2001-02-16 20:38:40'에서 10년 후);결과:200
다우요일은 일요일입니다(0) ~ 토요일(6)
추출 선택(타임스탬프의 다우 '2001-02-16 20:38:40');결과:5
참고하세요추출의 요일 번호 매기기가 해당 요일의 번호와 다릅니다.to_char(..., 'D')함수.
도이연중일(1–365/366)
추출 선택(타임스탬프에서 DOY '2001-02-16 20:38:40');결과:47
에포크용스포츠 토토대가 포함된 타임스탬프값, 1970-01-01 00:00:00 UTC 이후의 초 수(그 이전 타임스탬프의 경우 음수); 에 대한날짜그리고타임스탬프값, 스포츠 토토대 또는 일광 절약 스포츠 토토 규칙에 관계없이 1970-01-01 00:00:00 이후 명목상 초 수입니다. 에 대한간격값, 간격의 총 초 수
추출 선택(스포츠 토토대가 '2001-02-16 20:38:40.12-08'인 타임스탬프의 에포크);결과:982384720.120000추출 선택(타임스탬프 '2001-02-16 20:38:40.12'의 에포크);결과:982355920.120000추출 선택('5일 3스포츠 토토' 간격의 에포크);결과:442800.000000
에포크 값을 다시 a로 변환할 수 있습니다.스포츠 토토대가 포함된 타임스탬프와to_timestamp:
_timestamp(982384720.12)로 선택;결과:2001-02-17 04:38:40.12+00
신청 시 주의하세요to_timestampa에서 추출된 시대로날짜또는타임스탬프값은 오해의 소지가 있는 결과를 생성할 수 있습니다. 결과는 원래 값이 UTC로 제공되었다고 효과적으로 가정하지만 그렇지 않을 수도 있습니다.
스포츠 토토스포츠 토토 필드(타임스탬프의 0~23, 간격 제한 없음)
추출 선택(타임스탬프 '2001-02-16 20:38:40'으로부터 스포츠 토토);결과:20
isodow요일은 월요일(1) ~ 일요일(7)
추출 선택(타임스탬프에서 ISODOW '2001-02-18 20:38:40');결과:7
이것은 다음과 동일합니다다우일요일 제외. 이는 다음과 일치합니다.ISO8601 요일 번호 매기기.
isoyear그ISO8601 날짜가 속하는 주 번호 연도
추출 선택('2006-01-01' 날짜의 ISO 연도);결과:2005추출 선택('2006-01-02' 날짜의 ISO 연도);결과:2006
각각ISO8601 주 번호 지정 연도는 1월 4일이 포함된 주의 월요일로 시작하므로 1월 초 또는 12월 말에ISO연도는 그레고리오력과 다를 수 있습니다. 참조주자세한 내용은 필드를 참조하세요.
줄리안그줄리안 데이트날짜 또는 타임스탬프에 해당합니다. 현지 자정이 아닌 타임스탬프는 분수 값으로 나타납니다. 참조섹션 B.7자세한 정보는.
추출 선택(날짜 '2006-01-01'의 JULIAN);결과:2453737추출 선택(타임스탬프 '2006-01-01 12:00'에서 JULIAN);결과:2453737.50000000000000000000
마이크로초소수 부분을 포함한 초 필드에 1,000,000을 곱합니다. 여기에는 전체 초가 포함됩니다.
추출 선택('17:12:28.5' 스포츠 토토부터 밀리초);결과:28500000
밀레니엄천년기; 에 대한간격값, 연도 필드를 1000으로 나눈 값
추출 선택(타임스탬프 '2001-02-16 20:38:40'에서 밀레니엄');결과:3추출 선택('2001년' 간격에서 밀레니엄);결과:2
1900년대는 두 번째 천년기에 속합니다. 세 번째 밀레니엄은 2001년 1월 1일에 시작되었습니다.
밀리초소수 부분을 포함한 초 필드에 1000을 곱합니다. 여기에는 전체 초가 포함됩니다.
추출 선택('17:12:28.5' 스포츠 토토부터 밀리초);결과:28500.000
분분 필드(0–59)
추출 선택(타임스탬프 '2001-02-16 20:38:40'에서 1분 후);결과:38
월연도 내의 월 수(1-12); 에 대한간격값, 모듈로 12(0–11)의 개월 수
추출 선택(타임스탬프 '2001-02-16 20:38:40'의 월);결과:2추출 선택('2년 3개월' 간격의 월);결과:3추출 선택('2년 13개월' 간격의 월);결과:1
분기날짜가 속한 연도의 분기(1-4). 에 대한간격값, 월 필드를 3 더하기 1로 나눈 값
추출 선택(타임스탬프 '2001-02-16 20:38:40'의 분기);결과:1추출 선택('1년 6개월' 간격의 분기);결과:3
초소수 초를 포함한 초 필드
추출 선택(타임스탬프 '2001-02-16 20:38:40'에서 두 번째);결과:40.000000추출 선택('17:12:28.5' 스포츠 토토으로부터 두 번째);결과:28.500000
스포츠 토토대UTC로부터의 스포츠 토토대 오프셋으로, 초 단위로 측정됩니다. 양수 값은 UTC 동쪽 스포츠 토토대에 해당하고, 음수 값은 UTC 서쪽 스포츠 토토대에 해당합니다. (기술적으로는,포스트그레SQL윤초가 처리되지 않으므로 UTC를 사용하지 않습니다.)
timezone_hour스포츠 토토대 오프셋의 스포츠 토토 구성요소
timezone_min스포츠 토토대 오프셋의 분 구성요소
주수ISO8601주-연도의 주입니다. 정의에 따르면 ISO 주는 월요일에 시작되며, 연도의 첫 번째 주는 해당 연도의 1월 4일을 포함합니다. 즉, 한 해의 첫 번째 목요일은 해당 연도의 1주차에 속합니다.
ISO 주 번호 지정 시스템에서는 1월 초 날짜가 전년도의 52번째 또는 53번째 주에 포함될 수 있으며, 12월 말 날짜가 다음 해의 첫 번째 주에 포함될 수 있습니다. 예를 들어,2005-01-012004년 53번째 주의 일부이며,2006-01-012005년 52번째 주의 일부입니다.2012-12-312013년 첫 주의 일부입니다. 다음을 사용하는 것이 좋습니다.isoyear필드와 함께주일관된 결과를 얻으려면.
용간격값, 주 필드는 단순히 적분 일 수를 7로 나눈 값입니다.
추출 선택(타임스탬프 '2001-02-16 20:38:40'의 주);결과:7추출 선택('13일 24스포츠 토토' 간격의 주);결과:1
년연도 필드입니다. 없다는 점을 명심하세요.0 AD그러므로 빼기BC년부터AD한 해를 조심스럽게 보내야 합니다.
추출 선택(타임스탬프 '2001-02-16 20:38:40'의 연도);결과:2001
처리할 때간격값, 그추출함수는 간격 출력 함수에서 사용되는 해석과 일치하는 필드 값을 생성합니다. 정규화되지 않은 간격 표현으로 시작하면 놀라운 결과가 나올 수 있습니다. 예를 들면 다음과 같습니다.
간격 '80분' 선택;결과:01:20:00추출물 선택(간격 '80분'으로부터 분);결과:20
입력값이 +/-무한대일 때,추출단조 증가 필드에 대해 +/-무한대를 반환합니다(에포크, 줄리안, 년, isoyear, 십년, 세기및밀레니엄for타임스탬프입력;에포크, 스포츠 토토, 일, 년, 십년, 세기및밀레니엄for간격입력). 다른 필드의 경우 NULL이 반환됩니다.PostgreSQL9.6 이전 버전은 모든 무한 입력 사례에 대해 0을 반환했습니다.
그추출함수는 주로 계산 처리를 위한 것입니다. 표시할 날짜/스포츠 토토 값의 형식을 지정하려면 다음을 참조하세요.PostgreSQL : 문서 : 개발 : 9.8. 데이터 유형 토토 커뮤니티 토토 커뮤니티 기능.
그date_part함수는 전통적인 것을 모델로 합니다.앵그르에 해당SQL-표준 함수추출:
date_part('필드', 출처)
여기에 주의하세요필드매개변수는 이름이 아닌 문자열 값이어야 합니다. 에 대한 유효한 필드 이름날짜_부분다음과 동일합니다추출. 역사적인 이유로,날짜_부분함수는 유형의 값을 반환합니다.배정밀도. 이로 인해 특정 용도에서는 정밀도가 손실될 수 있습니다. 사용추출대신 권장됩니다.
SELECT 날짜_부분('일', TIMESTAMP '2001-02-16 20:38:40');결과:16SELECT date_part('스포츠 토토', INTERVAL '4스포츠 토토 3분');결과:4
date_trunc #함수date_trunc개념적으로 다음과 유사합니다.트렁크숫자에 대한 함수.
date_trunc(필드,출처[,스포츠 토토대])
출처유형의 값 표현식입니다.타임스탬프, 스포츠 토토대가 포함된 타임스탬프, 또는간격. (유형 값날짜그리고스포츠 토토다음으로 자동 전송됩니다.타임스탬프또는간격, 각각.)필드입력 값을 자를 정밀도를 선택합니다. 반환 값도 마찬가지로 유형입니다.타임스탬프, 스포츠 토토대가 포함된 타임스탬프또는간격, 선택한 항목보다 중요도가 낮은 모든 필드가 0(또는 일 및 월의 경우 1)으로 설정되어 있습니다.
유효한 값필드다음은:
마이크로초 |
밀리초 |
초 |
분 |
스포츠 토토 |
일 |
주 |
월 |
분기 |
년 |
10년 |
세기 |
밀레니엄 |
입력값이 다음 유형인 경우스포츠 토토대가 포함된 타임스탬프, 특정 스포츠 토토대를 기준으로 잘림이 수행됩니다. 예를 들어, 다음으로 잘림일해당 영역에서 자정인 값을 생성합니다. 기본적으로 현재를 기준으로 잘림이 수행됩니다.스포츠 토토대설정이지만 선택사항스포츠 토토대84167_84297섹션 8.5.3.
처리 중에는 스포츠 토토대를 지정할 수 없습니다.스포츠 토토대가 없는 타임스탬프또는간격입력. 이는 항상 액면 그대로 받아들여집니다.
예(현지 스포츠 토토대가 다음과 같다고 가정미국/New_York):
SELECT date_trunc('스포츠 토토', TIMESTAMP '2001-02-16 20:38:40');결과:2001-02-16 20:00:00SELECT date_trunc('연도', TIMESTAMP '2001-02-16 20:38:40');결과:2001-01-01 00:00:00SELECT date_trunc('일', 스포츠 토토대가 포함된 타임스탬프 '2001-02-16 20:38:40+00');결과:2001-02-16 00:00:00-05SELECT date_trunc('일', 스포츠 토토대가 포함된 타임스탬프 '2001-02-16 20:38:40+00', '호주/시드니');결과:2001-02-16 08:00:00-05SELECT date_trunc('스포츠 토토', INTERVAL '3일 02:47:33');결과:3일 02:00:00
date_bin #함수date_bin “빈”지정된 간격의 입력 타임스탬프(보폭)는 지정된 원점에 맞춰 정렬됩니다.
날짜_빈(보폭,출처,원산지)
출처유형의 값 표현식입니다.타임스탬프또는스포츠 토토대가 포함된 타임스탬프. (유형 값날짜다음으로 자동 전송됩니다.타임스탬프.) 보폭유형의 값 표현식입니다.간격. 반환 값도 마찬가지로 유형입니다.타임스탬프또는스포츠 토토대가 포함된 타임스탬프이며, 이는출처배치되었습니다.
예:
SELECT date_bin('15분', TIMESTAMP '2020-02-11 15:44:17', TIMESTAMP '2001-01-01');결과:2020-02-11 15:30:00SELECT date_bin('15분', TIMESTAMP '2020-02-11 15:44:17', TIMESTAMP '2001-01-01 00:02:30');결과:2020-02-11 15:32:30
전체 단위(1분, 1스포츠 토토 등)의 경우 유사한 결과와 동일한 결과를 제공합니다.date_trunc콜, 그러나 차이점은 그것입니다date_bin임의의 간격으로 잘릴 수 있습니다.
그보폭간격은 0보다 커야 하며 월 이상의 단위를 포함할 수 없습니다.
스포츠 토토대그리고현지에서 #그스포츠 토토대연산자가 타임스탬프를 변환합니다.없이스포츠 토토대와 타임스탬프 사이함께스포츠 토토대 및스포츠 토토대 포함 스포츠 토토값을 다른 스포츠 토토대에 적용합니다.표 9.34변종을 보여줍니다.
표 9.34. 스포츠 토토대그리고현지에서변형
|
운영자 설명 예제 |
|---|
|
주어진 타임스탬프를 변환합니다.없이스포츠 토토대에서 타임스탬프까지함께스포츠 토토대, 주어진 값이 명명된 스포츠 토토대에 있다고 가정합니다.
|
|
주어진 타임스탬프를 변환합니다.없이스포츠 토토대에서 타임스탬프까지함께세션의
|
|
주어진 타임 스탬프를 변환합니다와스포츠 토토대에서 타임스탬프까지없이스포츠 토토대(해당 스포츠 토토대에 표시되는 스포츠 토토).
|
|
주어진 타임스탬프를 변환합니다.와스포츠 토토대에서 타임스탬프까지없이스포츠 토토대(세션과 함께 표시되는 스포츠 토토)
|
|
주어진 스포츠 토토을 변환합니다와스포츠 토토대를 새 스포츠 토토대로 변경합니다. 날짜가 제공되지 않았으므로 명명된 대상 영역에 대해 현재 활성 UTC 오프셋을 사용합니다.
|
|
주어진 스포츠 토토을 변환합니다와스포츠 토토대를 새 스포츠 토토대로 변경합니다. 날짜가 제공되지 않았으므로 세션의 현재 활성 UTC 오프셋을 사용합니다. 세션을 가정하면
|
이 표현에서 원하는 스포츠 토토대영역텍스트 값으로 지정할 수 있습니다(예:'미국/로스앤젤레스') 또는 간격(예:간격 '-08:00'). 텍스트의 경우 스포츠 토토대 이름은 다음에 설명된 방법 중 하나로 지정할 수 있습니다.섹션 8.5.3. 간격 사례는 UTC로부터의 고정 오프셋이 있는 영역에만 유용하므로 실제로는 흔하지 않습니다.
구문현지에서다음의 약칭으로 사용될 수 있습니다.스포츠 토토대, 여기서현지현지세션의 것스포츠 토토대값.
예(현재 가정스포츠 토토대설정은미국/Los_Angeles):
스포츠 토토대 'America/Denver'에서 타임스탬프 '2001-02-16 20:38:40' 선택;결과:2001-02-16 19:38:40-08스포츠 토토대 '2001-02-16 20:38:40-05' AT 스포츠 토토대 'America/Denver'를 사용하여 타임스탬프 선택;결과:2001-02-16 18:38:40타임스탬프 '2001-02-16 20:38:40' AT 타임존 '아시아/도쿄' AT 타임존 '아메리카/시카고';결과:2001-02-16 05:38:40현지에서 '2001-02-16 20:38:40-05' 스포츠 토토대를 사용하여 타임스탬프를 선택하세요.결과:2001-02-16 17:38:40스포츠 토토대 '2001-02-16 20:38:40-05' AT 스포츠 토토대 '+05'를 사용하여 타임스탬프 선택;결과:2001-02-16 20:38:40현지에서 '20:38:40-05' 스포츠 토토대를 사용하여 스포츠 토토을 선택하세요.결과:17:38:40
첫 번째 예에서는 스포츠 토토대가 부족한 값에 스포츠 토토대를 추가하고 현재 값을 사용하여 값을 표시합니다.스포츠 토토대설정. 두 번째 예에서는 스포츠 토토대 값이 포함된 타임스탬프를 지정된 스포츠 토토대로 이동하고 스포츠 토토대가 없는 값을 반환합니다. 이를 통해 현재와 다른 값을 저장하고 표시할 수 있습니다.스포츠 토토대설정. 세 번째 예에서는 도쿄 스포츠 토토을 시카고 스포츠 토토으로 변환합니다. 네 번째 예에서는 스포츠 토토대 값이 포함된 타임스탬프를 현재 지정된 스포츠 토토대로 이동합니다.스포츠 토토대설정하고 스포츠 토토대 없이 값을 반환합니다. 다섯 번째 예는 POSIX 스타일 스포츠 토토대 사양의 기호가 ISO-8601 날짜/스포츠 토토 리터럴의 기호와 반대 의미를 가짐을 보여줍니다.섹션 8.5.3그리고토토 꽁 머니 : 문서 : 개발 : 부록 B. 날짜/시간 지원.
여섯 번째 예는 경고적인 이야기입니다. 입력값과 관련된 날짜가 없기 때문에 세션의 현재 날짜를 사용하여 변환이 이루어집니다. 따라서 이 정적 예제는 연도 중 보는 스포츠 토토에 따라 잘못된 결과를 표시할 수 있습니다.'미국/로스앤젤레스'일광 절약 스포츠 토토을 준수합니다.
함수SQL 준수 구문과 동일합니다.스포츠 토토대(영역, 타임스탬프).타임스탬프스포츠 토토대영역
함수SQL 준수 구문과 동일합니다.스포츠 토토대(영역, 스포츠 토토).스포츠 토토스포츠 토토대영역
함수SQL 준수 구문과 동일합니다.스포츠 토토대(타임스탬프).타임스탬프현지에서
함수SQL 준수 구문과 동일합니다.스포츠 토토대(스포츠 토토).스포츠 토토현지에서
포스트그레SQL현재 날짜 및 스포츠 토토과 관련된 값을 반환하는 다양한 함수를 제공합니다. 이러한 SQL 표준 함수는 모두 현재 트랜잭션의 시작 스포츠 토토을 기준으로 값을 반환합니다.
CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_TIME(정밀도) CURRENT_TIMESTAMP(정밀도) 현지 스포츠 토토 현지타임스탬프 현지스포츠 토토(정밀도) 현지타임스탬프(정밀도)
CURRENT_TIME그리고CURRENT_TIMESTAMP스포츠 토토대로 값을 전달합니다.현지 스포츠 토토그리고LOCALTIMESTAMP스포츠 토토대 없이 값을 전달합니다.
CURRENT_TIME, CURRENT_TIMESTAMP, 현지 스포츠 토토및LOCALTIMESTAMP선택적으로 정밀도 매개변수를 사용할 수 있으며, 이로 인해 결과가 초 필드에서 해당 소수 자릿수로 반올림됩니다. 정밀도 매개변수가 없으면 결과는 사용 가능한 전체 정밀도로 제공됩니다.
몇 가지 예:
현재_스포츠 토토 선택;결과:14:39:53.662522-05CURRENT_DATE 선택;결과:2019-12-23CURRENT_TIMESTAMP 선택;결과:2019-12-23 14:39:53.662522-05CURRENT_TIMESTAMP(2) 선택;결과:2019-12-23 14:39:53.66-05현지 스포츠 토토 스탬프 선택;결과:2019-12-23 14:39:53.662522
이러한 함수는 현재 트랜잭션의 시작 스포츠 토토을 반환하므로 해당 값은 트랜잭션 중에 변경되지 않습니다. 이는 기능으로 간주됩니다. 단일 트랜잭션이 일관된 개념을 가질 수 있도록 하는 것이 목적입니다.“현재”스포츠 토토, 동일한 트랜잭션 내의 여러 수정 사항이 동일한 타임스탬프를 갖도록 합니다.
다른 데이터베이스 시스템에서는 이러한 값을 더 자주 높일 수 있습니다.
포스트그레SQL또한 현재 문의 시작 스포츠 토토과 함수가 호출되는 순간의 실제 현재 스포츠 토토을 반환하는 함수를 제공합니다. 비SQL 표준 스포츠 토토 함수의 전체 목록은 다음과 같습니다.
transaction_timestamp() 문_타임스탬프() 시계_타임스탬프() 스포츠 토토() 지금()
transaction_timestamp()다음과 동일함CURRENT_TIMESTAMP, 그러나 반환되는 내용을 명확하게 반영하기 위해 이름이 지정되었습니다.statement_timestamp()현재 명령문의 시작 스포츠 토토(구체적으로는 클라이언트로부터 최신 명령 메시지를 받은 스포츠 토토)을 반환합니다.statement_timestamp()그리고transaction_timestamp()트랜잭션의 첫 번째 문에서는 동일한 값을 반환하지만 후속 문에서는 다를 수 있습니다.시계_타임스탬프()실제 현재 스포츠 토토을 반환하므로 단일 SQL 문 내에서도 해당 값이 변경됩니다.timeofday()역사적입니다PostgreSQL함수. 좋아요시계_타임스탬프(), 실제 현재 스포츠 토토을 반환하지만 형식이 지정된텍스트a가 아닌 문자열스포츠 토토대가 포함된 타임스탬프값.지금()전통적인 것입니다포스트그레SQL동등함transaction_timestamp().
모든 날짜/스포츠 토토 데이터 유형은 특수 리터럴 값도 허용합니다.지금현재 날짜와 스포츠 토토을 지정합니다(역시 트랜잭션 시작 스포츠 토토으로 해석됨). 따라서 다음 세 가지 모두 동일한 결과를 반환합니다.
CURRENT_TIMESTAMP 선택; 지금 선택(); 타임스탬프 '지금' 선택; -- 아래 팁을 참조하세요.
나중에 평가할 값을 지정할 때 세 번째 형식을 사용하지 마십시오(예: a기본값테이블 열에 대한 절입니다. 시스템이 변환됩니다.지금에타임스탬프상수가 구문 분석되자마자 기본값이 필요할 때 테이블 생성 스포츠 토토이 사용됩니다! 처음 두 양식은 함수 호출이기 때문에 기본값이 사용될 때까지 평가되지 않습니다. 따라서 행 삽입 스포츠 토토을 기본값으로 설정하는 원하는 동작을 제공합니다. (또한 참조섹션 8.5.1.4.)
서버 프로세스 실행을 지연시키기 위해 다음 기능을 사용할 수 있습니다.
pg_sleep (배정밀도) pg_sleep_for (간격) pg_sleep_until(스포츠 토토대가 포함된 타임스탬프)
pg_sleep주어진 스포츠 토토(초)이 경과할 때까지 현재 세션의 프로세스를 휴면 상태로 만듭니다. 소수점 이하 지연을 지정할 수 있습니다.pg_sleep_for은 수면 스포츠 토토을 다음과 같이 지정할 수 있도록 하는 편의 기능입니다.간격. pg_sleep_until은 특정 기상 스포츠 토토을 원할 때 사용하는 편의 기능입니다. 예를 들면:
SELECT pg_sleep(1.5);
SELECT pg_sleep_for('5분');
SELECT pg_sleep_until('내일 03:00');
휴면 간격의 효과적인 해결 방법은 플랫폼에 따라 다릅니다. 0.01초가 일반적인 값입니다. 수면 지연은 최소한 지정된 기간만큼 길어집니다. 서버 부하 등의 요인에 따라 더 길어질 수도 있습니다. 특히,pg_sleep_until지정된 스포츠 토토에 정확히 깨어날 수는 없지만 더 일찍 깨어나지는 않습니다.
호출 시 세션이 필요 이상으로 많은 잠금을 보유하지 않는지 확인하세요pg_sleep또는 그 변형. 그렇지 않으면 다른 세션에서 수면 프로세스를 기다려야 하여 전체 시스템 속도가 느려질 수 있습니다.