感謝您提前提供幫助。
我正在嘗試創建一個度量來根據日期對某些列的調整值求和:
邏輯是:
如果日期在 2022 年 6 月 22 日之前,則:對于銷售代碼“A0001”、“A0003”和“A0004”,將其銷售計數(在另一列中)調整 *3
對于銷售代碼“B0001”,將其銷售計數(在另一列中)調整 *4,
對于銷售代碼“C0001”,將其銷售計數(在另一列中)調整 *5,
其他銷售計數保持不變
這是我到目前為止所擁有的,但計算不正確
Measure =
SUMX('TABLE’,
SWITCH (
'TABLE'[Date] < DATE(2022,06,22)
'TABLE'[Sales Code] in {"A0001", "A0003", "A0004"}, 'TABLE'[Sales Count] * 3,
'TABLE'[Sales Code] in {"B0001"}, 'TABLE'[Sales Count] * 4,
'TABLE'[Sales Code] in {"C0001"}, 'TABLE'[Sales Count] * 5,
'TABLE'[Sales Count]
)
)
uj5u.com熱心網友回復:
首先,你錯過了SWITCH()函式的第一個引數。它期望在此位置具有 TRUE/FALSE 結果的運算式。
有一個提示可以TRUE()用作第一個引數,但這不是通用解決方案,應謹慎使用。要了解有關使用此提示的潛在問題的更多資訊,請閱讀此。
然后我想提醒你,你可以使用&&(AND) 和||(OR) 來撰寫復雜的條件。
因此,您的問題的解決方案如下所示:
Measure =
SUMX(
'TABLE',
SWITCH (
TRUE,
'TABLE'[Date] < DATE(2022,06,22)
&& 'TABLE'[Sales Code] in {"A0001", "A0003", "A0004"},
'TABLE'[Sales Count] * 3,
'TABLE'[Date] < DATE(2022,06,22)
&& 'TABLE'[Sales Code] in {"B0001"},
'TABLE'[Sales Count] * 4,
'TABLE'[Date] < DATE(2022,06,22)
&& 'TABLE'[Sales Code] in {"C0001"},
'TABLE'[Sales Count] * 5,
'TABLE'[Sales Count]
)
)
對于那些不熟悉SWITCH()功能的人,我建議訪問此頁面。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/496716.html
上一篇:優化if條件陳述句
