You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by 李乐 <ll...@163.com> on 2022/09/11 15:16:50 UTC
partition
最近在使用flink1.12 的sql方式时,发现ROW_NUMBER去重的结果不符合预期。具体表现为:当在第二天有新的optime出现时,下发的时间却还是昨天日志中的optime,看到官方文档中说该去重函数只支持单个的时间属性 排序/降序,所以不知是否我自己的sql中使用了两个字段排序造成的?代码如下,大佬帮忙看看:
SELECT
pk_id,
optime_timestamp,
process_time
FROM (
SELECT
pk_id,
process_time,
CAST(optime / 1000 AS BIGINT) AS optime_timestamp,
ROW_NUMBER() OVER(PARTITION BY pk_id ORDER BY FROM_UNIXTIME(CAST(optime / 1000 AS BIGINT), 'yyyyMMdd') DESC, optime) AS rn
FROM
tabke_a
) t
WHERE
rn = 1