You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spotfire中相同Rowkey下重复Production字段的排序实现咨询

问题根因

你之前使用的DenseRank表达式仅将Production作为唯一排序列,同一个Rowkey分组下所有Production值相同的记录会得到完全相同的排名,无法区分重复项,因此达不到筛选保留唯一记录的效果。

可用解决方案

方案1:使用RowNumber函数(最直观易维护)

直接通过开窗函数按Rowkey分组,组内排序后分配唯一行号,后续过滤行号=1的记录即可实现去重:

RowNumber() OVER (Partition By [Rowkey] Order By [Production] ASC, [RowId] ASC)

说明:

  • Partition By [Rowkey] 标识按Rowkey拆分计算分组
  • Order By [Production] ASC 指定组内优先按Production升序排序
  • 末尾补充的[RowId] ASC是为了给Production相同的记录指定兜底排序规则,保证相同Production的记录也能拿到唯一序号;如果你有其他优先级更高的排序规则(比如按创建时间、流水号排序),可以替换这部分内容

方案2:修正DenseRank写法

如果坚持使用DenseRank,需要补充第二排序列保证相同Production的记录排名唯一:

DenseRank([Production], [RowId], "ASC", [Rowkey], "ties.method=first")

后续操作

两种方案计算得到的序号列,只要筛选值为1的记录,即可实现同一个Rowkey下每个Production仅保留一条的需求。

内容的提问来源于stack exchange,提问作者DunderMifflinThisIsPam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 12:36:02