BQで時間情報を分刻みにカットしてユニークにする
時間情報がたくさんある状態で、どれくらいのデータが分単位で存在しているのか、欠損してるのか、みたいな情報を調査しようと思った時に雑に作ったSQL
一応countをとれば、「その分にどれくらいアクセスがあったのか」もわかる。
1分刻みだったらtruncにすればいいけど、5分刻みみたいにしたい場合はこちらを参照。
BigQueryでTIMESTAMPを5分単位で丸める
時間情報がたくさんある状態で、どれくらいのデータが分単位で存在しているのか、欠損してるのか、みたいな情報を調査しようと思った時に雑に作ったSQL
userid単位にデータを一旦分でtruncして、これをgroupbyしてる。with rawdata as (SELECT userid, TIMESTAMP_TRUNC(datetime(time, 'Asia/Tokyo') ,MINUTE) as view_timeFROM`data_log`
)select userid , view_timefrom rawdatagroup by userid, view_timeorder by userid, view_time
一応countをとれば、「その分にどれくらいアクセスがあったのか」もわかる。
1分刻みだったらtruncにすればいいけど、5分刻みみたいにしたい場合はこちらを参照。
BigQueryでTIMESTAMPを5分単位で丸める
コメント