일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Redshift
- string
- PANDAS
- math
- Apache
- c#
- Google Excel
- GIT
- SQL
- gas
- google apps script
- hive
- Google Spreadsheet
- dataframe
- Mac
- Excel
- Tkinter
- array
- Java
- Github
- Python
- matplotlib
- numpy
- django
- 파이썬
- PostgreSQL
- list
- PySpark
- Kotlin
- Today
- Total
달나라 노트
Hive : extract (날짜에서 특정 요소 추출하기, 시간 추출, 년도 추출, 주차 추출, 요일 추출) 본문
Hive : extract (날짜에서 특정 요소 추출하기, 시간 추출, 년도 추출, 주차 추출, 요일 추출)
CosmosProject 2023. 10. 10. 22:54
extract 함수는 어떤 날짜/시간 string에서 원하는 요소를 추출합니다.
Syntax
extract(field from datetime_string)
datetime_string에서 field에 명시된 요소를 추출합니다.
field로 사용할 수 있는 것은 다음과 같습니다.
- year -> 년
- month -> 월
- day -> 일
- quarter -> 분기
- week -> 주차
- dayofweek -> 요일
- hour -> 시
- minute -> 분
- second -> 초
select extract(year from '2023-11-10 12:34:56')
;
-- Result
2023
2023-11-10 12:34:56에서 year(년)를 추출합니다.
2023이 return됩니다.
select extract(month from '2023-11-10 12:34:56') --> 11
;
-- Result
11
2023-11-10 12:34:56에서 month(월)를 추출합니다.
11이 return됩니다.
select extract(day from '2023-11-10 12:34:56')
;
-- Result
10
2023-11-10 12:34:56에서 day(일)를 추출합니다.
10이 return됩니다.
select extract(quarter from '2023-11-10 12:34:56') --> 4
;
-- Result
4
2023-11-10 12:34:56에서 quarter(분기)를 추출합니다.
4가 return됩니다.
select extract(week from '2023-11-10 12:34:56')
;
-- Result
45
2023-11-10 12:34:56에서 week(주차)를 추출합니다.
45가 return됩니다.
select extract(dayofweek from '2023-11-10 12:34:56')
;
-- Result
6
2023-11-10 12:34:56에서 day of week(요일)를 추출합니다.
2023-11-10은 금요일이므로 6이 return됩니다.
요일별 weekday number는 다음과 같습니다.
일 = 1
월 = 2
화 = 3
수 = 4
목 = 5
금 = 6
토 = 7
select extract(hour from '2023-11-10 12:34:56')
;
-- Result
12
2023-11-10 12:34:56에서 hour(시간)를 추출합니다.
따라서 12가 return됩니다.
select extract(minute from '2023-11-10 12:34:56')
;
-- Result
34
2023-11-10 12:34:56에서 minute(분)을 추출합니다.
따라서 34가 return됩니다.
select extract(second from '2023-11-10 12:34:56')
;
-- Result
56
2023-11-10 12:34:56에서 second(초)를 추출합니다.
따라서 56가 return됩니다.
'SQL > Apache Hive' 카테고리의 다른 글
Hive : unix_timestamp를 이용해서 두 시점간의 차이 구하기 (2) | 2023.10.10 |
---|---|
Hive : datediff (두 날짜 간의 차이 구하기, 두 시점 차이를 일단위로 구하기) (0) | 2023.10.10 |
Hive : dayofmonth, dayofweek, weekofyear (일 추출, 요일 추출, 주차 번호 추출, weeknumber, day, weekday) (0) | 2023.10.10 |
Hive : current_timestamp (현재 시간, 현재 시점 얻기, 현재 timestamp 얻기) (0) | 2023.10.10 |
Hive : substring (문자열 추출하기) (0) | 2021.09.13 |