このようなテーブルがある場合
begin date end date data
2013-01-01 2013-01-04 7
2013-01-05 2013-01-06 9
どうやったらこんな風に返せるんだろう...
date data
2013-01-01 7
2013-01-02 7
2013-01-03 7
2013-01-04 7
2013-01-05 9
2013-01-06 9
私が考えていたことの 1 つは、すべての日付だけを含む別のテーブルを作成し、and を使用して上記のテーブルに日付のみを含むテーブルを結合するdate>=begin date
ことdate<=end date
ですが、繰り返しの日付だけで余分なテーブルを維持する必要があるのは少し不格好に思えます.
場合によっては、データ範囲がなく、as of
基本的に最初の例のように見える日付だけがありますが、end date
. これend date
は、次の行の「現在」の日付によって暗示されます (つまり、終了日は次の行のas of
-1 である必要があります)。row_number() 関数を使用して次の値を取得する「解決策」がありましたが、ネストされた自己結合が多数ある方法が非常に長いクエリ時間の原因になっていると思われます。