首页 > 解决方案 > 从 Power BI 图表中删除空白天

问题描述

我创建了一个每周请求度量,如下所示:

RequestsWeekly = var result= CALCULATE(
DISTINCTCOUNTNOBLANK(SessionRequests[RequestDateTime]),
FILTER('Date','Date'[WeekDate]=SELECTEDVALUE('DateSelector'[WeekDate],MAX('DateSelector'[WeekDate]))))+0

RETURN 
    IF ( NOT ISBLANK ( result ), result)

DateSelector 是我为 Power BI Dasbboard 的下拉菜单选择的所有日期创建的独立表(未连接到数据模型中的任何其他表)。不幸的是,由于 Date Selector 表中的日期比 Date 表中的日期少,我得到... Date 表是标准 DATE 表,其中包含 1970 年到 2038 年的日期。日期通过多对一关系单向连接到会话请求筛选。会话请求是主要的事实表。

在此处输入图像描述

我需要通过 DAX 删除结果集中的空白行,这样它就不会出现在我的 X 轴图表中。我尝试了很多不同的 DAX 组合,例如空白 () 和 NOT ISBLANK。我是否需要为结果集创建一个表,然后尝试过滤掉那里的空白日?

标签: sql-serverpowerbidax

解决方案


您不应该检查结果是否为空,而是检查当前行上下文是否存在 VALUE ( Table[DayNameShort] ):

RequestsWeekly =
VAR result =
    CALCULATE (
        DISTINCTCOUNTNOBLANK ( SessionRequests[RequestDateTime] ),
        FILTER (
            'Date',
            'Date'[WeekDate]
                = SELECTEDVALUE (
                    'DateSelector'[WeekDate],
                    MAX ( 'DateSelector'[WeekDate] )
                )
        )
    ) + 0
RETURN
    IF (
        NOT ISBLANK (
            VALUE ( Table[DayNameShort] ) -- put here correct table name
        ),
        result
    )

推荐阅读