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

PowerBI中如何判断行是否为值首次出现并做唯一性标记

PowerBI标记重复值首次出现的实现方法

注意:PowerBI不存在Excel默认的工作表行顺序,你必须先给表添加一个索引列来锁定你要的行排序逻辑,否则计算出来的首次出现标记可能和你预期的顺序不符。

方法1:Power Query编辑器实现(推荐,数据清洗阶段处理性能更好)

操作步骤如下:

  • 打开Power Query编辑器,选中目标数据表,点击顶部「添加列」选项卡,选择「索引列」→「从1」,生成用于确定行顺序的索引列
  • 再次点击「添加列」→「自定义列」,在弹出的公式框中输入如下M语言代码:
if [索引] = List.Min(Table.SelectRows(#"添加的索引列的步骤名", (x)=> x[Book Number] = [Book Number])[索引]) then 1 else 0

替换说明:将公式中的#"添加的索引列的步骤名"替换为你上一步添加索引列的实际步骤名称(可在Power Query右侧的「应用步骤」面板中查看对应步骤名),如果你的书号列名不是Book Number也对应替换即可

  • 将生成的自定义列重命名为Unique or not,删除多余的索引列,加载回数据模型即可使用

方法2:DAX计算列实现(适合不需要调整Power Query流程的场景)

操作步骤如下:

  • 先按照方法1的第一步添加索引列并加载到数据模型中
  • 在报表视图右侧的字段面板,右键点击目标表,选择「新建列」,输入如下DAX公式:
Unique or not = 
VAR CurrentBook = '你的表名'[Book Number]
VAR CurrentIndex = '你的表名'[索引]
VAR MinIndex = CALCULATE(MIN('你的表名'[索引]), ALLEXCEPT('你的表名', '你的表名'[Book Number]))
RETURN IF(CurrentIndex = MinIndex, 1, 0)

替换说明:将你的表名替换为你实际的数据表名称即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 21:42:00