【发布时间】:2020-12-19 04:56:28
【问题描述】:
在诸如 DAX 之类的语言中,有一整页 functions 与(或多或少)创建各种开始/结束日期的日期表相关。例如:
DATESMTD返回一个表,其中包含当前上下文中当月至今的日期列。
这个的主要用途是什么?
【问题讨论】:
标签: excel powerbi dax business-intelligence powerpivot
在诸如 DAX 之类的语言中,有一整页 functions 与(或多或少)创建各种开始/结束日期的日期表相关。例如:
DATESMTD返回一个表,其中包含当前上下文中当月至今的日期列。
这个的主要用途是什么?
【问题讨论】:
标签: excel powerbi dax business-intelligence powerpivot
假设您要创建一个切片器,您可以在其中选择一个日期并希望将本月至今、本季度至今和年初至今总计显示为单独的指标。
您不必手动编写这些周期至今指标的逻辑,您可以简单地编写:
TotalMTD = CALCULATE ( [Total], DATESMTD ( 'Date'[Date] )
TotalQTD = CALCULATE ( [Total], DATESQTD ( 'Date'[Date] )
TotalYTD = CALCULATE ( [Total], DATESYTD ( 'Date'[Date] )
不必写类似这样的东西:
TotalQTD =
VAR SelectedDate =
SELECTEDVALUE ( 'Date'[Date] )
VAR QuarterStart =
EOMONTH ( SelectedDate, - MOD ( MONTH ( SelectedDate ) - 1, 3 ) - 1 )
RETURN
CALCULATE (
[Total],
'Date'[Date] <= SelectedDate,
'Date'[Date] > QuarterStart
)
有关时间智能的更多使用示例,请参见此处:
https://www.daxpatterns.com/standard-time-related-calculations/
【讨论】:
YEAR(NOW()) - NOW() 的静态计算有何不同,例如 YTD。