我是 DAX 的新手,所以请耐心等待。用最简单的术语来说,我想将欧洲以外的所有区域的度量金额加倍,然后将结果相加。以下是 DAX 的一些示例:
DEFINE
measure Fact[test] = CALCULATE (IF(SELECTEDVALUE('Dim'[Region]) = "Europe", Fact[Revenue],Fact[Revenue] * 2))
EVALUATE(
SUMMARIZECOLUMNS(
ROLLUPADDISSUBTOTAL('Dim'[Region], "RegionSubtotal"),
"Original Measure", Fact[Revenue],
"New Measure", Fact[test]
)
)
Region |
RegionSubtotal |
Original Measure |
New Measure |
Asia |
False |
200 |
400 |
Americas |
False |
500 |
1000 |
Europe |
False |
300 |
300 |
|
True |
1000 |
2000 |
我试图为第二列获取 (400+1000+300) = 1700 而不是 2000。有什么想法吗?
对于小计行,所选值不是“欧洲”,因此该值加倍。
要解决此问题,您需要迭代度量中的区域。像这样的东西:
test =
SUMX (
VALUES ( 'Dim'[Region] ),
IF (
'Dim'[Region] = "Europe",
[Revenue],
[Revenue] * 2
)
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)