powerbi - DAX 自定义总计未按预期运行
问题描述
我有一个 Measure 计算累积总数:
CumulativeCount:=
VAR date1 = MAX( DimDate[Date] )
VAR date2 = MAX( FactTable[EndDate] )
RETURN
CALCULATE (
SUM( FactTable[Count] ),
DimDate[Date] <= date1,
DimDate[Date] <= date2,
ALL( DimDate[Date] )
)
另一个,实际用于数据透视表,在计算总计时,应该将每个日期的累积总计相加:
CumulativeCountForPivot:=
IF (
-- If calculating for one group
COUNTROWS( VALUES( FactTable[Group] ) ) = 1,
-- Do core logic
[CumulativeCount],
-- Else add up the results from each group
SUMX(
VALUES( FactTable[Group] ),
[CumulativeCount]
)
)
我不明白为什么最后一栏中的总计是 12,而不是 6。
解决方案
原因是总计是针对GroupA
并合并的,并且在该日期GroupB
有一个累积计数(对于每个组)。12
6
On 06/01/2017
there are no records for GroupA
so the [CumulativeCount]
measure is return a blank,即使在该日期之前有记录并且计数为6
. 如果您GroupA
使用 a Count
of 0
on添加了一条记录06/01/2017
,那么您会看到6
出现。
6
如果您想要仅在该日期显示的度量,请尝试以下操作:
CountForPivot =
VAR TempTable = SUMMARIZE(FactTable,
FactTable[Group],
FactTable[EndDate],
"Cumulative",
CALCULATE(SUM(FactTable[Count]),
FILTER(ALLEXCEPT(FactTable, FactTable[Group]),
FactTable[EndDate] <= MAX(FactTable[EndDate])
)
)
)
RETURN SUMX(TempTable, [Cumulative])
推荐阅读
- python - discord.py:如何获取提到的频道的频道 ID?
- delphi - 如何处理 Delphi 中两个不同公寓之间的 COM 回调
- snowflake-cloud-data-platform - DB 类型 449900 无效
- python - Plotly 不会从枢轴绘制条形图
- c# - Unity - 无法在 C# 中访问主播放器的子组件
- javascript - 使用 browserify 捆绑 js 代码时找不到预设 @babel/react
- bash - Bash 算术错误:“let: =+: 语法错误:预期操作数(错误标记为“=+”)+ 等于”
- django - 如何在 Django 的 ArrayList 中按值排序?
- python - 如何滚动到 QTableView 中的特定行?
- r - R group_by:具有 3 个 A、B、C 类的列。将任何等于 A 的元素转换为 B 或 C 以最大化 B 或 C 的最小频率