首页 文章

在DAX中过滤DISTINCTCOUNT

提问于
浏览
0

我认为这是一项简单的任务:创建一个Measure,它返回满足特定过滤条件的所有记录的字段的非重复计数,在本例中为日期过滤器 . 我想出了以下内容:

=CALCULATE(DISTINCTCOUNT(ExitFilter[Dim_Client_ID]),ExitFilter[ExitDate]<1/1/2014)

结果是(空白)所以我试过:

=CALCULATE(DISTINCTCOUNT(ExitFilter[Dim_Client_ID]),FILTER(ExitFilter,ExitFilter[ExitDate]<1/1/2014))

结果仍然是(空白)所以我试过:

=CALCULATE(COUNTROWS(DISTINCT(ExitFilter[Dim_Client_ID])),FILTER(ExitFilter,ExitFilter[ExitDate]<1/1/2014))

结果仍然是(空白) . 我错过了什么?什么(空白)表示什么?

如果不清楚'ExitFilter'是一个表,[Dim_Client_Id]是一列,[ExitDate]是一个日期列 .

2 回答

  • 0

    汤姆,认为你的第二次尝试是“正确的”,但你需要小心你如何表达日期 .

    更高版本PowerPivot对此有点有趣,而"01/01/2014"应该工作我不认为它会 .

    而是尝试用41640替换01/01/2014 - 这是基础日期值,它的hacky但是那么任何类型的硬编码日期:-)

  • 1

    汤姆,比较日期来自我用最简单的Date function做的经验 .

    因此,如果您将公式更新为以下内容:

    =CALCULATE([Your Measure], Table[DateColumn]>DATE(2014,1,1))
    

    通过易于阅读的代码,您将获得所需的一切 . 此外,对于任何高级的基于时间的计算,最好的方法是创建dates table并使用PowerPivot的Time Intelligence模块 .

相关问题