我是DAX和PowerPivots的新手。我正在使用PowerPivot从SQL服务器提取数据。我正在使用的数据非常庞大和复杂,但我正在考虑这个问题的简化版本。
假设我有2列,其中一列包含产品名称,另一列包含产品销售日期。每次销售1件产品时,我都有一排。
Product | Date
Orange | 08/13/2013
Orange | 08/13/2013
Orange | 08/13/2013
Apple | 08/14/2013
Apple | 08/16/2013
Orange | 08/17/2013
Orange | 08/17/2013
我想使用DAX获取迄今为止在整个数据集中销售了多少产品的运行计数。这就是我想要的结果。
Product | Date | Cumulative Sales
Orange | 08/13/2013 | 1
Orange | 08/13/2013 | 2
Orange | 08/13/2013 | 3
Apple | 08/14/2013 | 1
Apple | 08/16/2013 | 2
Orange | 08/17/2013 | 4
Orange | 08/17/2013 | 5
任何帮助都将不胜感激。
编辑:还有一件事,数据不一定按日期排序。我可能会按日期订购,但它需要修改其他一些东西,所以如果可能的话,我不会这么做。我继承的表格中有很多其他公式,重新排序可能会破坏别的东西。
答案 0 :(得分:2)
您可以在PowerPivot中进行计算测量以处理此问题。如果您想获得所有时间的累计销售额,您可以这样做:
CALCULATE( SUM( FactSales[SalesAmount] ),
FILTER(
ALL( DimDate) ,
DimDate[Datekey] <= MAX( DimDate[Datekey] )
)
)
如果您希望能够选择特定时间段(例如:选定的周数或月数的运行总数),您可以这样做:
CALCULATE( SUM( FactSales[SalesAmount]) ,
FILTER(
ALLSELECTED( DimDate),
DimDate[Datekey] <= MAX( DimDate[Datekey] )
)
)