返回一个单列的日期表,将当前筛选上下文中的日期按指定的间隔向未来或者过去平移。
语法
- DATEADD ( <日期列>, <偏移量>, <偏移单位> )
复制代码
参数 | 属性 | 描述 | 日期列 | | 包含日期的列 | 偏移量 | | 一个整数,从日期列中添加或减去的时间间隔数 | 偏移单位 | | 偏移量使用的单位:Day, Month, Quarter, Year |
返回值
表 包含单列日期值的表
备注
<日期列>参数可以是以下任一项 :
- 对日期/时间列的引用。只有在这种情况下才应用上下文转换,因为列引用被替换为CALCULATETABLE ( DISTINCT ( <日期列> ) )
- 返回单列日期/时间值的表表达式
- 定义日期/时间值的单列表的布尔表达式
如果为<偏移量>为正数,则<日期列>中的日期向未来平移;如果指定的数字为负数,则<日期列>中的日期向过去平移 。
<偏移单位>是一个枚举值,不是字符串;因此不应将值括在引号中 。 此外,在使用值 year、quarter、month 和 day 时应将它们拼写完整。
完成平移后,只有在日期列中存在的日期才会出现在结果表中。
DATEADD 已经不再要求使用连续日期。
DATEADD 未针对 DirectQuery 进行优化,在计算列和行级别安全性公式中完全不受支持。 但可以在度量值和查询公式中使用,只不过无法保证性能。
示例
下面的公式计算当前筛选上下文中的日期之前一年的日期
- = DATEADD('Date'[Date],-1,year)
复制代码
扩展阅读:
理解 DATEADD
DATEADD用于获取经过特定偏移后的一组日期集合,它是一个表函数,只处理作为第一参数传递的日期列中的现有值。DATEADD在特定条件下会应用一些特殊的逻辑,特别是与月份选择相关的时候,你将在稍后的案例中了解这一点。
|