[英]How to create a cumulative sum over multiple columns in Power BI?
I have a table in Power BI desktop that I'm trying to create a cumulative sum on. 我试图在Power BI桌面上创建一个累加的总和。 This is the SQL to create this table:
这是创建此表的SQL:
create table #sample
(
DOS_Month varchar(6)
,CRD_Month varchar(6)
,Credit_Received_Date date
,DaysElapsed varchar(20)
,Last_Mo_Collections decimal(13,0)
)
insert #sample values('201707','201708','8/2/2017','01',11470)
insert #sample values('201707','201708','8/3/2017','01',2821)
insert #sample values('201707','201708','8/4/2017','01',1361)
insert #sample values('201707','201708','8/7/2017','01',9040)
insert #sample values('201707','201708','8/3/2017','02',2397)
insert #sample values('201707','201708','8/4/2017','02',5101)
insert #sample values('201707','201708','8/7/2017','02',2256)
insert #sample values('201707','',NULL,'Complete Month',1041764)
After adding the cumulative sum column, this table should look like this: 添加累加和列之后,此表应如下所示:
DOS_Month CRD_Month Credit_Received_Date DaysElapsed Last_Mo_Collections Cumulative
$201,707 201708 8/2/2017 1 $11,470 $11,470
$201,707 201708 8/3/2017 1 $2,821 $14,291
$201,707 201708 8/4/2017 1 $1,361 $15,652
$201,707 201708 8/7/2017 1 $9,040 $24,692
$201,707 201708 8/3/2017 2 $2,397 $27,089
$201,707 201708 8/4/2017 2 $5,101 $32,190
$201,707 201708 8/7/2017 2 $2,256 $34,446
$201,707 Complete Month $1,041,764 $1,076,210
How can I do this using DAX or Quick Measures? 如何使用DAX或快速测量来做到这一点? Also, I can't use the time functions in order to sum these either since DOS_Month and CRD_Month aren't time datatypes.
另外,由于DOS_Month和CRD_Month都不是时间数据类型,因此我不能使用时间函数来对它们进行求和。
This formula should give you your desired cumulative sum column. 该公式将为您提供所需的累积总和列。
Cumulative = CALCULATE(
SUM(Table1[Last_Mo_Collections]),
FILTER(
Table1,
Table1[DOS_Month] = EARLIER(Table1[DOS_Month]) &&
(
(
Table1[DaysElapsed] = EARLIER(Table1[DaysElapsed]) &&
Table1[Credit_Received_Date] <= EARLIER(Table1[Credit_Received_Date])
) || (
Table1[DaysElapsed] < EARLIER(Table1[DaysElapsed])
)
)
)
)
The EARLIER
function is the key (and in my opinion horribly named). EARLIER
函数是关键(在我看来,它的名字叫恐怖)。 From the documentation, the function... 从文档中可以看到...
Returns the current value of the specified column in an outer evaluation pass of the mentioned column.
返回所提及列的外部评估遍中指定列的当前值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.