次の表があるとします。
CREATE TABLE channel1m (
ts TIMESTAMP WITHOUT TIME ZONE NOT NULL,
itemId BIGINT,
value BIGINT
)
次のように、itemIdごとに1分ごとに行を挿入できます。
ts itemId value
2012-12-03 15:29:00 100 1
2012-12-03 15:30:00 100 2
2012-12-03 15:30:00 101 0
2012-12-03 15:32:00 100 1
2012-12-03 15:32:00 101 1
値を返すことで時間のギャップ(たとえば、itemId 101の場合は15:29:00、両方のアイテムの場合は15:31:00)を埋めるクエリを作成する方法を(追加のテーブルを作成せずに)見つけることができませんNULL
。
期待される結果セットは次のようになります。
ts itemId value
2012-12-03 15:29:00 100 1
2012-12-03 15:29:00 101 NULL
2012-12-03 15:30:00 100 2
2012-12-03 15:30:00 101 0
2012-12-03 15:31:00 100 NULL
2012-12-03 15:31:00 101 NULL
2012-12-03 15:32:00 100 1
2012-12-03 15:32:00 101 1
一連のタイムスタンプを含む個別のタイムテーブルを持つソリューションを見つけましたが、クエリだけでこれを解決したいと思います。これは可能ですか?