如何在 Confluence Flink 上的窗口查询中使用提示?
提示示例:
/*+ OPTIONS('scan.startup.mode'='latest-offset') */
我想在如下查询中使用它:
INSERT INTO topic2(id, name, avgValue)
SELECT id, name, AVG(value) as avgValue
FROM TABLE(TUMBLE(TABLE topic1, DESCRIPTOR(messageTimestamp), INTERVAL '30' SECONDS))
GROUP BY window_start, window_end, id, name;
为此,需要将
TABLE topic
语法替换为 SELECT
查询。 (请注意,查询确实需要放在括号中。)
这应该可以做到:
INSERT INTO topic2(id, name, avgValue)
SELECT id, name, AVG(value) as avgValue
FROM TABLE(
TUMBLE(
(SELECT * FROM topic1 /*+ OPTIONS('scan.startup.mode'='latest-offset') */),
DESCRIPTOR(messageTimestamp),
INTERVAL '30' SECONDS
))
GROUP BY window_start, window_end, id, name;
进一步类似的查询可能需要列出描述符(如果它是像
$rowtime
这样的元数据虚拟列);在这里似乎没有必要。