1. reflet

    Posted

    reflet
Changes in title
+指定の期間の日付一覧を生成する (Presto)
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,45 @@
+## 概要
+データを生成する際に、データが無くても一覧に出力してほしい要件があったので、
+指定の期間の日付一覧を作成する方法を調べた内容をメモしておく。
+
+## クエリ
+
+```SQL
+SELECT
+ TD_TIME_FORMAT(n, 'yyyy-MM-dd', 'JST') AS date
+FROM (
+ SELECT n1
+ FROM (
+ VALUES
+ SEQUENCE(
+ TD_TIME_PARSE('2018-01-01', 'JST'),
+ TD_TIME_PARSE('2018-12-31', 'JST'),
+ 60 * 60 * 24
+ )
+ ) AS x (n1)
+) t1
+CROSS JOIN UNNEST(n1) AS t (n)
+ORDER BY
+ TD_TIME_FORMAT(n, 'yyyy-MM-dd', 'JST') ASC
+;
+```
+
+実行結果
+
+```
+date
+2018-01-01
+2018-01-02
+2018-01-03
+
+  ・
+  ・
+  ・
+
+2018-12-29
+2018-12-30
+2018-12-31
+```
+
+## 参考サイト
+* [prestoで指定日からクエリ実行日までの日付の一覧を取得する](https://qiita.com/s-age/items/418c8ca1328854632ee2)