我有一个 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)
有谁知道为什么会发生这种情况,以及我如何才能达到所需的结果?