Power BI:如何根据引用另一个表的切片器从一个表返回值?

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

我有一个 Power BI 报告,其中有两个表。表_1 如下所示:

身份证 国家 成本 加入_字段
3月23日 英国 20 MAR23_英国
3月23日 投资回报率 10 MAR23_投资回报率
1月23日 英国 25 JAN23_英国
1月23日 投资回报率 25 JAN23_投资回报率

Joining_field 是一个计算列,它始终是唯一的。

Table_2 看起来像这样:

客户 身份证 国家 年份 加入_字段
X 3月23日 英国 2023 三月 MAR23_英国
3月23日 英国 2023 三月 MAR23_英国
Z 3月23日 投资回报率 2023 三月 MAR23_投资回报率
X 1月23日 英国 2023 一月 JAN23_英国
1月23日 投资回报率 2023 一月 JAN23_投资回报率

Joining_field 是一个计算列,它不是唯一的。

这两个表使用两个表中的联接字段建立一对多关系。

在我的报告的首页上,我有三个切片器,它们过滤表_2 中的“国家/地区”、“年份”和“月份”字段。

我想在 table_2 中创建一个度量,它根据切片器中选择的值返回 table_1 中成本列的值。因此,在上面的示例中,如果切片器设置为 Country = UK、Year = 2023、Month = MAR,则度量应返回 20。

我尝试过以下DAX但没有成功;它似乎只是对 table_1 中的整个 Cost 列进行了总结:

Measure_1 =
VAR V_year = SELECTEDVALUE(table_2[Year])
VAR V_month = SELECTEDVALUE(table_2[Month])
VAR V_country = SELECTEDVALUE(table_2[Country])
RETURN
CALCULATE(SUM(table_1[Cost]),USERELATIONSHIP(table_2[Joining_field],table_1[Joining_field]), 
table_2[Year] = V_year, 
table_2[Month] = V_month, 
table_2[Country] = V_country)

有谁知道为什么会发生这种情况,以及我如何才能达到所需的结果?

powerbi dax powerbi-desktop data-modeling measure
1个回答
0
投票

使用以下措施。

Measure = CALCULATE(SUM(Table_1[Cost]), CROSSFILTER(Table_1[Joining_field], Table_2[Joining_field], Both))

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