기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
DATE_PART 함수
DATE_PART는 표현식에서 날짜 부분 값을 추출합니다. DATE_PART는 PGDATE_PART 함수의 동의어입니다.
구문
DATE_PART(datepart, {date|timestamp})
인수
- datepart
-
날짜 값에서 함수가 실행되는 특정 부분(예: 년, 월 또는 일)의 식별자 리터럴 또는 문자열입니다. 자세한 내용은 날짜 또는 타임스탬프 함수의 날짜 부분 단원을 참조하십시오.
- {date|timestamp}
-
날짜 열, 타임스탬프 열 또는 묵시적으로 날짜 또는 타임스탬프로 변환되는 표현식입니다. date 또는 timestamp의 열 또는 표현식에는 datepart에 지정된 날짜 부분이 포함되어야 합니다.
반환 타입
DOUBLE
예시
DATE_PART 함수에 사용되는 기본 열 이름은 pgdate_part
입니다.
다음 예는 타임스탬프 리터럴에서 분을 찾습니다.
SELECT DATE_PART(minute, timestamp '20230104 04:05:06.789');
pgdate_part ----------- 5
다음 예는 타임스탬프 리터럴에서 주 번호를 찾습니다. 주 번호 계산은 ISO 8601 표준을 따릅니다. 자세한 내용은 Wikipedia의 ISO 8601
SELECT DATE_PART(week, timestamp '20220502 04:05:06.789');
pgdate_part ----------- 18
다음 예는 타임스탬프 리터럴에서 날짜를 찾습니다.
SELECT DATE_PART(day, timestamp '20220502 04:05:06.789');
pgdate_part ----------- 2
다음 예는 타임스탬프 리터럴에서 요일을 찾습니다. 주 번호 계산은 ISO 8601 표준을 따릅니다. 자세한 내용은 Wikipedia의 ISO 8601
SELECT DATE_PART(dayofweek, timestamp '20220502 04:05:06.789');
pgdate_part ----------- 1
다음 예는 타임스탬프 리터럴에서 세기를 찾습니다. 세기 계산은 ISO 8601 표준을 따릅니다. 자세한 내용은 Wikipedia의 ISO 8601
SELECT DATE_PART(century, timestamp '20220502 04:05:06.789');
pgdate_part ----------- 21
다음 예는 타임스탬프 리터럴에서 천 년 단위를 찾습니다. 천 년 단위 계산은 ISO 8601 표준을 따릅니다. 자세한 내용은 Wikipedia의 ISO 8601
SELECT DATE_PART(millennium, timestamp '20220502 04:05:06.789');
pgdate_part ----------- 3
다음 예는 타임스탬프 리터럴에서 마이크로초를 찾습니다. 마이크로초 계산은 ISO 8601 표준을 따릅니다. 자세한 내용은 Wikipedia의 ISO 8601
SELECT DATE_PART(microsecond, timestamp '20220502 04:05:06.789');
pgdate_part ----------- 789000
다음 예는 날짜 리터럴에서 월을 찾습니다.
SELECT DATE_PART(month, date '20220502');
pgdate_part ----------- 5
다음 예에서는 테이블의 열에 DATE_PART 함수를 적용합니다.
SELECT date_part(w, listtime) AS weeks, listtime FROM listing WHERE listid=10
weeks | listtime ------+--------------------- 25 | 2008-06-17 09:44:54 (1 row)
날짜 부분은 전체 이름 또는 약어로 지정할 수 있으며, 여기서 w는 주를 의미합니다.
요일을 나타내는 날짜 부분은 일요일부터 시작하여 0~6의 정수를 반환합니다. DATE_PART를 dow(DAYOFWEEK)와 함께 사용하면 일요일의 이벤트를 볼 수 있습니다.
SELECT date_part(dow, starttime) AS dow, starttime FROM event WHERE date_part(dow, starttime)=6 ORDER BY 2,1;
dow | starttime -----+--------------------- 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 6 | 2008-01-05 14:00:00 ... (1147 rows)