【BigQuery】日付の差分を計算する
DATE_DIFF関数
記法
date_diff(比較日①, 比較日②, 比較期間)
比較したい日付を比較日①と比較日②に当てはめる。
比較期間は、
- DAY
- WEEK
- MONTH
- YEAR
などの期間を指定する。
指定した機関の差分を返してくれる。
DAYを指定した場合、差分の日数が返される。
使い方
SELECT date_diff('2018-12-20', '2018-11-10', DAY) as diff_day, date_diff('2018-12-20', '2018-11-10', WEEK) as diff_week, date_diff('2018-12-20', '2018-11-10', MONTH) as diff_month
実行結果
diff_day | diff_week | diff_month |
---|---|---|
40 | 6 | 1 |
このように、日・週・月の差分を計算することができました。
留意点
上記で実施した比較の日付を入れ替えた際に、
一体どのような結果を返すでしょうか?
SELECT date_diff('2018-11-10', '2018-12-10', DAY) as diff_day
実行結果
diff_day |
---|
-30 |
このように、指定する日付を逆にしても計算はできました。
しかし結果が少し異なりましたね。
通常、期間の差分を計算したいときには、
date_diff(新しい日付, 古い日付)
で計算したほうが良さそうですね。
参考文献
BigQueryについて記載された参考書は、
- 作者: 加嵜長門,田宮直人,丸山弘詩
- 出版社/メーカー: マイナビ出版
- 発売日: 2017/03/27
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
- 作者: Jordan Tigani,Siddartha Naidu,Sky株式会社玉川竜司
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/03/23
- メディア: 大型本
- この商品を含むブログを見る
この2冊が有名かと思います。
SQLの基本的なことがわかっており、
辞書的に上記の本を持っていくのは良いことかと思います。
一方で、SQLをこれから使い始める人には、
こちらの入門書がオススメです。
スッキリわかるSQL入門 第2版 ドリル222問付き! (スッキリシリーズ)
- 作者: 中山清喬,飯田理恵子,株式会社フレアリンク
- 出版社/メーカー: インプレス
- 発売日: 2018/11/30
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
分かりやすい解説と演習問題がたくさんあるので、
非常に勉強がしやすい参考書になります。