仅计算第一次出现的值 - Power BI

问题描述 投票:0回答:1

我想在 Power BI 中创建一个列,查看 B 列或 C 列并记录 D 列,但仅当 B 列或 C 列中的给定标识符第一次出现时 - 之后它将给出 null (此期望的结果显示在 E 列中。我不能简单地删除 B 或 C 列中的重复项,因为像 F 列这样的字段具有单个 B 或 C 列标识符的倍数(在此之后还有许多其他列,我只是显示一小部分相关数据)。

我真正需要的只是获得准确的“订单通知天数”平均值,以便不考虑重复。我只需要最简单的方法来做到这一点,不必是一个新的专栏。

本质上,该过程从一个通知编号开始,然后该通知编号对应于一个订单号 - 因此订单通知天数只应计算一次。如果可以的话,每个订单号都可以有多个履行号。

我只是在Excel中放了一些示例,以便于显示,数据和所有字段都在Power BI中。

在此输入图片描述

powerbi dax powerquery
1个回答
0
投票

你可以在 powerquery 中尝试这个

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Grouped Rows" = Table.Group(Source, {"Notification Nuimber", "Order Number"}, {{"data", each 
    let a=Table.AddIndexColumn(_, "Index", 0, 1, Int64.Type),
    b = Table.AddColumn(a,"Desired Days notification", each if [Index]=0 then [Days Notification to Order] else null)
    in Table.RemoveColumns(b,{"Index"}), type table }}),
#"Removed Other Columns" = Table.SelectColumns(#"Grouped Rows",{"data"}),
ColumnsToExpand = List.Distinct(List.Combine(List.Transform(Table.Column( #"Removed Other Columns", "data"), each if _ is table then Table.ColumnNames(_) else {}))),
#"Expanded data" = Table.ExpandTableColumn(#"Removed Other Columns", "data", ColumnsToExpand,ColumnsToExpand)
in #"Expanded data"

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.