Presto (또는 athena)에서 날짜 차이를 구하는 방법에 대해서 알아보자.
기본적으로 date_diff 라는 함수를 사용한다.
date_diff( 'unit', '시작일자', '종료일자') 의 형식으로 사용하는데, 여기서 'unit'에 따라서 차이를 일단위로 계산할지 또는 월단위로 계산할지 등등을 정할 수 있다.
unit 으로는 'YEAR', 'QUARTER', 'MONTH', 'WEEK', 'DAY', 'HOUR' , 'MINUTE', 'SECOND' 등을 사용할 수 있다.
select date_diff('day', date('2022-01-01'), date('2022-02-01'))
--> 결과 : 31
한가지 주의할 점은 '시작일자' 와 '종료일자'가 날짜 형식의 타입이어야 한다. date, datetime, timestamp 등..
만일 date_diff('day', '2022-01-01', '2022-02-01') 와 같이 string 형태로 바로 써주면 에러가 난다.
mysql 에서는 내부적으로 알아서 형변환이 되어서 날짜 관련 함수에 바로 '2022-02-01' 과 같이 써주어도 되지만, preso (athena)에서는 날짜관련해서는 타입을 꼭 맞춰줘야 한다.
'분석 > 데이터분석' 카테고리의 다른 글
[SQL] 주단위 집계 꼭!! 주의해야할 점 (presto, athena) (0) | 2022.06.03 |
---|---|
[SQL] null 체크 (presto, athena) (0) | 2022.06.03 |
[SQL] 주단위 집계 꼭!! 주의해야할 점 (MySql) (0) | 2022.05.16 |
Mysql 샘플링 (Sampling) : 랜덤 추출 (0) | 2022.04.06 |
MySQL 날짜/시간 함수 (0) | 2022.03.29 |