背景
集計で、一定期間の月末の日付シリーズが必要になりました。
月末を出すためには月初を出す必要があるので、一緒にまとめておこうと思います。
クエリイメージ
数字のシリーズを作成
--> 固定した日付に対して、1ヶ月後・2ヶ月後...と足していく
クエリ
これは、2018年1月〜2018年12月の月初の日付を出力しています。
WITH num_series AS ( SELECT num FROM UNNEST(GENERATE_ARRAY(0, 11)) AS num ) SELECT DATE_ADD(DATE(2018, 1, 1), INTERVAL num MONTH) FROM num_series
月末を出す場合は月初から1日マイナスするようにします。
これは、2018年1月〜2018年12月の月末の日付を出力しています。
WITH num_series AS ( SELECT num FROM UNNEST(GENERATE_ARRAY(1, 12)) AS num ) SELECT DATE_SUB(DATE_ADD(DATE(2018, 1, 1), INTERVAL num MONTH), INTERVAL 1 DAY) FROM num_series