【发布时间】:2020-02-26 23:30:07
【问题描述】:
我正在构建一个计算列,该列需要对同一个表中的所有行求和,这些行共享一些公共属性并具有更大的日期值。
我知道我需要使用计算来打破过滤器上下文,但我不确定如何引用正在计算的行与计算函数中的同名表。在 Sql 中,这将作为具有同一个表的两个不同别名的自连接来完成,DAX 等价物是什么?
SQL 伪代码:
select
t1.Name
,sum(t2.a)
from table t1
inner join table t2 on t1.b = t2.b
and t1.c < t2.c
group by t1.name
DAX(如何正确引用外行与内表?):
calculate(sum(table[a]),
filter(all(table), table[b] = table[b])
)
【问题讨论】:
-
过去,EARLIER 函数用于引用当前行。最近,一个典型的模式是将当前行的值存储在一个变量中,然后在 CALCULATE 中使用它。如果您需要更具体的帮助,请发布您的数据样本并描述所需的结果。
标签: dax ssas-tabular