SQL presto 時間型の変更まとめ
型の種類
timestamp unixtime varchar date
型変換
- bigint型のunixtime→人間にとって見やいvarchar型にする
TD_TIME_FORMAT(x,'yyyy-MM-dd','JST') TD_TIME_FORMAT(1420038000 ,'yyyy-MM-dd','JST') -> 2015-01-01
[in] 1420093526 bigint(unixtime) [out] '2018-10-29' varchar
- 人間にとって見やすいvarchar型 → bihing型のunixtime
TD_TIME_PARSE('2015-01-01','JST') -> 1420038000
- bigint型のunixtime→ timestamp型
FROM_UNIXTIME(time) FROM_UNIXTIME(1420093526 ) -> 2018-09-10 00:00:00.000
[in] 1420093526 bigint (unixtime) [out] 2018-09-10 00:00:00.000 (timestamp)
その他便利な関数
- timestamp型などを引数にもって、指定した単位で切り上げる
DATE_TRUNC(unit.x) DATE_TRUNC('month', 2018-09-15 00:00:00.000 ) -> 2018-09-01 00:00:00.000
※xにはtimestamp型などが入る