달나라 노트

Hive : extract (날짜에서 특정 요소 추출하기, 시간 추출, 년도 추출, 주차 추출, 요일 추출) 본문

SQL/Apache Hive

Hive : extract (날짜에서 특정 요소 추출하기, 시간 추출, 년도 추출, 주차 추출, 요일 추출)

CosmosProject 2023. 10. 10. 22:54
728x90
반응형

 

 

 

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됩니다.

 

 

 

 

 

 

728x90
반응형
Comments