关于计算日期范围dax

执行日期计算时,创建日期范围可能会有所帮助。但是,我们该怎么做,在哪种情况下,哪种DAX功能可以帮助我们呢?现在,您可以了解有关此主题的更多信息。有关计算日期范围DAX的帖子首先出现在数据科学上。

来源:走向数据科学

在使用Power BI或在语义模型中开发时间智能测量时,有必要创建一个日期范围来计算特定时间范围的结果。

确切地说,DAX中几乎所有时间智能函数都创建了一个日期范围的日期列表。

dax

,但有时由于特定要求,我们必须创建自定义日期范围。

DAX为我们提供了两个功能:

这两个函数都将开始日期作为参数。但对于结束日期,行为是不同的。

虽然datesinperiod()占间隔(天,月份,季度,年),而dodatebetween()则使用指定的日期用作结束日期。

datesinperiod() datatesbetween()

相比之下,dateadd()使用当前的过滤器上下文来获取开始日期并计算结束日期。

dateadd()

,但我们想通过一个开始日期,这与当前过滤器上下文中的日期不同。

这是上面提到的功能之一发挥作用的时候。

在本文末尾,我将使用此处显示的技术向您展示一个实用示例。

工具和方案

就像在许多其他文章中一样,我使用DAX Studio编写DAX查询并分析结果。

如果您不熟悉编写DAX查询,请阅读我有关如何学习编写此类查询的文章:

这次,我仅将数据模型用于日期表。

我想从5月5日。2025年和未来2个月开始计算一个日期范围。

要设置开始日期,我使用此表达式:

这是DAX Studio的结果:

图1 - 查询并导致DAX Studio(作者图)

i定义一个变量,并为后续查询分配日期表达式的结果。

定义开始日期的另一种方法是使用日期(2025,05,05)创建一个日期值。

日期(2025,05,05)

结果将相同。

这两种方法之间的差异是第一个返回字符串,但第二种返回了适当的日期。

使用datesinperiod()

在这里