如何使用 DAX 度量显示具有空值的行项目

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

我们有两张桌子

表A =

Dates = CALENDAR(date(2023,1,1),TODAY())

表 B =

列之间的关系:

从数据表加入日期,一对多。

DAX 以获得投资回报率

ROIZ = 
VAR V1 = CALCULATE(SUM(Data[Spent]),ALLSELECTED(Dates[Date]),ALLEXCEPT(Data,Data[Type]))
VAR V2 = CALCULATE(SUM(Data[Returns]),ALLSELECTED(Dates[Date]),ALLEXCEPT(Data,Data[Type]))
return divide(V2,V1,0)

当我选择一月时,我得到以下信息:

错了,pear 应该显示 8 而不是 18,Kiwi 不见了。

当我选择二月时,我得到以下信息:

这是错误的,梨应该什么都不显示或 0


预期产出:(一月)

二月


您将通过使用获得二月产出

 roi =  divide(sum(data[spent]),sum(data[return]))

但它不会为您提供一月份的输出,其中需要包括 Kiwi 行项目

powerbi dax calculated-columns
1个回答
0
投票

您的

ALLEXCEPT
子句正在删除所有过滤器,包括日期,但应用于 Data[Type] 列的过滤器除外。尝试使用
KEEPFILTERS
并删除您的
ALLSELECTED(Dates[Date])
子句:

ROIZ =
VAR V1 =
    CALCULATE (
        SUM ( Data[Spent] ),
        KEEPFILTERS ( ALLEXCEPT ( Data, Data[Type] ) )
    )
VAR V2 =
    CALCULATE (
        SUM ( Data[Returns] ),
        KEEPFILTERS ( ALLEXCEPT ( Data, Data[Type] ) )
    )
RETURN
    DIVIDE ( V2, V1, 0 )
© www.soinside.com 2019 - 2024. All rights reserved.