DAX 查询(日复一日)
DAX Query on (Day Over Day)
我有销售额 table 和日期 table
我编写了以下查询来计算 DOD 销售额
销量 := SUM([销售额])
销售量(上一个):= CALCULATE([销售量], PREVIOUSDAY('Date'[日期])
销售量 (DOD) = DIVIDE([销售量]-[销售量 (Prev)],[销售量 (Prev)])
但是,上面的这些查询将根据一个月中的连续几天计算 DOD。我担心的是我只想计算那些订单日期。例如,我想比较 4/12/2016 和 1/12/2016 的销售额。 ((50-20)/20)。
我应该如何修改查询以实现该目的?
您必须创建一个计算列来获取之前的日期:
Previous Date =
CALCULATE (
MAX ( [Order Date] ),
FILTER ( ALL ( 'Table' ), [Order Date] < EARLIER ( 'Table'[Order Date] ) )
)
然后只需使用以下表达式创建度量:
Sales Volume := SUM('Table'[Sales])
Sales Volume Prev :=
CALCULATE (
SUM ( [Sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Order Date] = MAX ( [Previous Date] ) )
)
Sales Volume (DOD) :=
DIVIDE ( [Sales Volume] - [Sales Volume Prev], [Sales Volume Prev] )
如果有帮助请告诉我。
我有销售额 table 和日期 table
我编写了以下查询来计算 DOD 销售额
销量 := SUM([销售额])
销售量(上一个):= CALCULATE([销售量], PREVIOUSDAY('Date'[日期])
销售量 (DOD) = DIVIDE([销售量]-[销售量 (Prev)],[销售量 (Prev)])
但是,上面的这些查询将根据一个月中的连续几天计算 DOD。我担心的是我只想计算那些订单日期。例如,我想比较 4/12/2016 和 1/12/2016 的销售额。 ((50-20)/20)。 我应该如何修改查询以实现该目的?
您必须创建一个计算列来获取之前的日期:
Previous Date =
CALCULATE (
MAX ( [Order Date] ),
FILTER ( ALL ( 'Table' ), [Order Date] < EARLIER ( 'Table'[Order Date] ) )
)
然后只需使用以下表达式创建度量:
Sales Volume := SUM('Table'[Sales])
Sales Volume Prev :=
CALCULATE (
SUM ( [Sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Order Date] = MAX ( [Previous Date] ) )
)
Sales Volume (DOD) :=
DIVIDE ( [Sales Volume] - [Sales Volume Prev], [Sales Volume Prev] )
如果有帮助请告诉我。