答案 0 :(得分:1)
假设查询是在静态数据集上运行的,可以使用常规SQL来解决。由于Flink实现了标准SQL,因此该查询不是特定于Flink的,而是可以在任何关系数据库系统上运行。
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超出最多范围的行,则会丢失重复项。