Confluence Flink 窗口查询中的 Flink SQL 提示

问题描述 投票:0回答:1

如何在 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;
sql apache-flink flink-sql confluent-cloud
1个回答
0
投票

为此,需要将

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
这样的元数据虚拟列);在这里似乎没有必要。

© www.soinside.com 2019 - 2024. All rights reserved.