DAX日期范围语法 - 多次计算一行?

时间:2014-06-30 19:47:44

标签: sql-server ssas tabular dax

我正在使用SQL 2014表格模型,我想根据日期范围创建计数度量。

我的事实表将有一个开始和结束日期范围,可以跨越多个月。我希望用户能够选择日期范围来获取记录数。问题在于,每个月的记录跨度需要在计数中单独捕获。

例如:记录1 - 2014年1月1日 - 2014年8月21日。如果用户选择3/1到5/1的日期范围,我希望计数返回3(3月,4月和5月)。如果用户选择6/4 / - 6/4,我希望计数返回为1。

有没有办法可以用DAX做到这一点,还是我应该为每个月创建一条记录?

1 个答案:

答案 0 :(得分:0)

你的模型并不完全清楚;但假设您的StartDateEndDate位于同一行 - 您已生效,希望计算这两个日期之间的月数,并且可以按如下方式实现;

=(YEAR([EndDate])-YEAR([StartDate]))*12+MONTH([EndDate])-MONTH([StartDate])

您的衡量标准将SUM()此计算列的结果。