Apache Flink:如何删除 select 查询中的重复项?

Apache Flink: How to remove duplicates within select query?

如何使用 Apache fFlink 删除 SELECT 查询中的重复项?

我的 table 是:

并且我想删除 ID 中的重复项以保持最大范围

假设查询在静态数据集上运行,用正则SQL即可解决。由于 Flink 实现了标准 SQL,这个查询不是 Flink-specific 但在任何关系数据库系统上都会 运行。

SELECT DISTINCT t.id, t.name, t.range 
  FROM t, (SELECT id, MAX(range) AS maxRange FROM t GROUP BY id) s
  WHERE t.id = s.id AND t.range = s.maxRange

请注意,如果有一个 ID 超过一行且具有最大范围,您将丢失重复项。