DATESBETWEEN函数

DATESBETWEEN函数隶属于“时间智能函数”,属于“”函数。可以用作生成固定范围的日期,也可以用来作为限定条件来对聚合计算进行限制。

在业务需求中,有时候需要将数据与上一阶段的数据进行对比,注意,这里说的是一个阶段,不是一个点;还有一种情况是需要用一段时间的数据作为标准去比较。

这些情况都是需要DATESBETWEEN函数的,当然,还有其他办法,只不过DATESBETWEEN函数相对简单,可以作为过渡使用。

语法

DAX=
DATESBETWEEN(<日期列>,<开始日期>,<结束日期>)

参数

日期列:对日期列的引用。

开始日期:可以是固定日期,也可以是日期表达式。

结束日期:可以是固定日期,也可以是日期表达式。

返回结果

一张表。

注意

1、如果开始日期是空白日期,那么会选取日期列的最早日期。

2、如果结束日期是空白日期,那么会选取日期列的最晚日期。

3、取值包含两端值。如果开始日期是9月1日,那么9月1日当天的值属于计算范围,而不是从9月2日开始计算。

例子

示例文件:

为了准确表达DATESBETWEEN函数的用法,白茶随机模拟了一份数据。

例子1:

DATESBETWEEN函数例子1 =
DATESBETWEEN ( '例子'[日期], DATE ( 2019, 4, 1 ), DATE ( 2019, 6, 30 ) )

结果如下:

从这里能发现DATESBETWEEN函数与之前几期日期函数的区别。

日期函数会自动填充,将非连续的日期填充变得连续。

而DATESBETWEEN函数只考虑节点和事实。

就像上面这段代码,4月1日到6月30日连续的话有将近90个固定日期,但是实际事实表只有三个固定值,那么结果就是这个节点范围内的事实情况。

例子2:

DATESBETWEEN函数例子2 =
VAR TP =
    DATESBETWEEN ( '例子'[日期], DATE ( 2019, 5, 1 ), DATE ( 2019, 10, 1 ) )
RETURN
    CALCULATE ( SUM ( '例子'[销售] ), TP ) / 5

这段代码是什么意思?求2019年5月1日到2019年10月1日之间的销售数据平均值作为标准去被比较。

放在折线图中对比,结果如下:

动态的观测一下:

可以看得出来,无论切片器如何调整,被比较的标准线都没有发生变化。

小伙伴们,GET了么?

白茶会不定期的分享一些函数卡片哦。

(文件在知识星球[PowerBI丨需求圈])

这里是白茶,一个PowerBI的初学者。

下面这个知识星球是针对有实际需求的小伙伴,有需要的请加入下面的知识星球。

(这个星球里面有白茶之前所有的案例文件。)



ID:Storysming