EXTRACT 함수는 datetime 값 및 간격에서 필드를 추출(또는 값을 계산)합니다.
결과는 YEAR, MONTH, DAY, HOUR, MINUTE, DAYS, DAYOFYEAR, DAYOFWEEK, MONTHS, QUARTEROFYEAR, QUARTERS, WEEKS, WEEKOFYEAR 및 WEEKOFMONTH 추출에 대해서는 INTEGER이지만 SECOND 추출에 대해서는 FLOAT이고 ISLEAPYEAR 추출에 대해서는 BOOLEAN입니다. SourceDate가 NULL인 경우, 추출 유형에 상관없이 결과는 NULL입니다.
EXTRACT는 DateTime 값 및 간격에서 개별 필드를 추출합니다. 두 번째 매개변수에 지정된 DateTime 값에 있는 필드만을 추출할 수 있습니다. 요청된 필드가 데이터 유형 내에 존재하지 않으면 구문 분석 시간 또는 런타임 오류가 생성됩니다.
Extract | 설명 |
---|---|
YEAR | 연도 |
MONTH | 월 |
DAY | 일 |
HOUR | 시간 |
MINUTE | 분 |
SECOND | 초 |
DAYS | 0001년 1월 1일과 SourceDate 사이에 발견된 일 수. |
DAYOFYEAR | 연도의 일 |
DAYOFWEEK | 요일: 일요일 = 1, 월요일 = 2, 화요일 = 3, 수요일 = 4, 목요일 = 5, 금요일 = 6, 토요일 = 7. |
MONTHS | 0001년 1월 1일과 SourceDate 사이에 발견된 개월 수. |
QUARTEROFYEAR | 분기: 1 - 3월 = 1, 4 - 6월 = 2, 7 - 9월 = 3, 10 - 12월 = 4. |
QUARTERS | 0001년 1월 1일과 SourceDate 사이에 발견된 분기 수. |
WEEKS | 0001년 1월 1일과 SourceDate 사이에 발견된 주 수. |
WEEKOFYEAR | 연도의 주 |
WEEKOFMONTH | 월의 주 |
ISLEAPYEAR | 이 해가 윤년인지 여부 |
EXTRACT(YEAR FROM CURRENT_DATE)및
EXTRACT(HOUR FROM LOCAL_TIMEZONE)은 둘 다 오류 없이 작동되지만,
EXTRACT(DAY FROM CURRENT_TIME)은 실패합니다.
EXTRACT (DAYS FROM DATE '2000-02-29')연도 1에서 '2000-02-29'까지 일 수를 계산하고
EXTRACT (DAYOFYEAR FROM CURRENT_DATE)현재 연도부터 시작하여 발견된 일 수를 계산하지만
EXTRACT (DAYOFYEAR FROM CURRENT_TIME)CURRENT_TIME에 날짜 정보가 없으므로 실패합니다.