使用筛选器对 Power BI 中首次出现的不同值求和

时间:2021-01-05 02:20:04

标签: powerbi dax

在 Power BI 中,我的数据中有一些重复条目,只有 1 列不同,这是一个“详细信息”列。

enter image description here

基本上,当我对 Power BI 卡上的值列求和时,我希望它过滤 IsActive = 1 并对每个唯一名称求和,因此在本例中:

Total= 10 + 7

有什么办法可以用 DAX 公式过滤它吗?

3 个答案:

答案 0 :(得分:1)

假设您的表也可以有一行与另一行具有相同的值但名称不同,并且其中的行的“详细信息”列并不总是包含“功能 1”

Name    Values  Details IsActive
Item 1  10  Feature 1   1
Item 1  10  Feature 2   1
Item 2  15  Feature 1   0
Item 3  7   Feature 1   1
Item 3  7   Feature 2   1
Item 3  7   Feature 3   1
Item 4  10  Feature 1   1
Item 5  10  Feature A   1

那么我们应该使用 Name 列写如下内容

Total = 
CALCULATE(
    SUMX( SUMMARIZE( T, T[Name], T[Values] ), T[Values] ),
    T[IsActive] = 1
)

答案 1 :(得分:0)

您可以创建一个计算列,您可以在其中根据以下链接中提供的 M-query 的出现对行进行排名:

https://community.powerbi.com/t5/Desktop/How-to-add-Row-number-over-partition-by-Customer-DAX-or-M-query/td-p/566949

计算列完成后,您可以根据以下措施获得结果: sum(value) 其中 IsActive=1 和calculatedColumn=1 通过过滤器 DAX

答案 2 :(得分:0)

第一次出现似乎并不相关,因此您可以编写一个度量来对不同的值求和。

SUMX (
    CALCULATETABLE (
        VALUES ( Table1[Value] ),
        Table1[IsActive] = 1
    ),
    Table1[Value]
)