複数のストリームデータからタプルを選択して,一つのタプルにまとめる演算処理をストリームデータの結合といいます。
ストリームデータを結合するクエリについて,気温と湿度の2種類のストリームデータを結合し,さらに観測所ごとにタプルを結合する場合を例に説明します。このクエリを実行した場合の,入力データと出力データを次の図に示します。
図2-20 ストリームデータを結合するクエリを実行した場合の入力データと出力データ
REGISTER STREAM temperature_stream
(observation_time TIME, id INTEGER, temperature INTEGER);
REGISTER STREAM humidity_stream
(observation_time TIME, id INTEGER, humidity INTEGER);
REGISTER QUERY join_operation
ISTREAM (
SELECT temperature_stream.observation_time AS temperature_stream_time,
temperature_stream.id AS temperature_stream_id,
temperature_stream.temperature,
humidity_stream.observation_time AS humidity_stream_time,
humidity_stream.id AS humidity_stream_id,
humidity_stream.humidity
FROM temperature_stream[PARTITION BY id ROWS 1],
humidity_stream[PARTITION BY id ROWS 1]
WHERE temperature_stream.id = humidity_stream.id);