📜  DAX功能-时间智能(1)

📅  最后修改于: 2023-12-03 14:40:38.594000             🧑  作者: Mango

DAX功能-时间智能

简介

DAX(Data Analysis Expressions)是一种公式语言,由Microsoft提供。它用于在Power BI、Analysis Services和Excel等工具中创建添加计算列、度量值和表达式的公式。其中时间智能是一种常用的DAX功能。

时间智能包括时间智能计算和时间智能过滤两个方面。时间智能计算可以根据不同的时间单位(年、季度、月、周、日、小时、分钟等)对不同时间范围内的数据进行汇总计算。时间智能过滤则是将数据以时间为过滤条件进行筛选显示,方便用户根据时间范围进行数据分析。

时间智能计算

时间智能计算是指将给定时间范围内的数据进行汇总计算。它可以根据不同的时间单位对数据进行汇总计算,如年、季度、月、周、日、小时、分钟等。以下是时间智能计算的相关公式说明:

  • TOTALYTD: 计算当前日期到指定年度(如2019年)的累计值,公式如下:
TOTALYTD(sum([Sales]),[Date],"12/31/2019")
  • TOTALQTD: 计算当前日期到指定季度的累计值,公式如下:
TOTALQTD(sum([Sales]),[Date])
  • TOTALMTD: 计算当前日期到指定月份的累计值,公式如下:
TOTALMTD(sum([Sales]),[Date])
  • TOTALWTD: 计算当前日期到指定周的累计值,公式如下:
TOTALWTD(sum([Sales]),[Date])
  • DATESYTD: 计算当前日期到指定年度(如2019年)的日期值,公式如下:
DATESYTD([Date],"12/31/2019")
  • DATESQTD: 计算当前日期到指定季度的日期值,公式如下:
DATESQTD([Date])
  • DATESMTD: 计算当前日期到指定月份的日期值,公式如下:
DATESMTD([Date])
  • DATESWTD: 计算当前日期到指定周的日期值,公式如下:
DATESWTD([Date])
时间智能过滤

时间智能过滤是指根据时间范围将数据进行筛选显示。它可以根据不同的时间单位(年、季度、月、周、日等)对数据进行筛选,方便用户进行数据分析。以下是时间智能过滤的相关公式说明:

  • DATEADD: 向前或向后移动日期,公式如下:

    • DATEADD([Date],-1,YEAR):向前移动一年,即显示去年同期的数据;
    • DATEADD([Date],-1,QUARTER):向前移动一个季度,即显示上季度的数据;
    • DATEADD([Date],-1,MONTH):向前移动一个月,即显示上月的数据;
    • DATEADD([Date],-1,WEEK):向前移动一周,即显示上周的数据;
    • DATEADD([Date],-1,DAY):向前移动一天,即显示昨天的数据。
  • DATESBETWEEN: 显示指定日期范围内的数据,公式如下:

FILTER(Table,DATESBETWEEN([Date],DATE(2019,1,1),DATE(2019,12,31)))
总结

DAX的时间智能功能可以帮助用户根据时间范围进行数据分析,展现出数据的时间轴和变化趋势,对于需要对时间进行分析和展示的业务场景非常适用。