Power BI中应用日期相对筛选时保留NULL日期数据的方法咨询
Power BI中应用日期相对筛选时保留NULL日期数据的方法咨询
嗨,我来帮你搞定这个问题!你遇到的情况很常见——用Power BI的相对日期筛选时,默认会把日期为NULL的记录排除,就像你说的,想要实现类似SQL里date between xx and xx OR date IS NULL的效果,这里有两种简单可行的方法:
方法一:创建DAX度量值控制筛选
这种方法灵活性很强,适合动态调整筛选范围:
- 进入Power BI的“数据”视图,点击“新建度量值”
- 输入下面的DAX代码(记得替换成你实际的表名、日期列名称和需要的月数):
保留有效记录 = VAR 当前日期 = TODAY() VAR 最近N个月的起始日期 = EDATE(当前日期, -6) // 这里的-6代表最近6个月,按需修改数字 RETURN IF( OR( ISBLANK('你的表名'[你的日期列]), '你的表名'[你的日期列] >= 最近N个月的起始日期 && '你的表名'[你的日期列] <= 当前日期 ), 1, 0 )
- 回到“报表”视图,把这个度量值拖到视觉对象的“筛选器”面板里,设置筛选条件为“保留有效记录 = 1”,这样就能同时显示最近N个月的记录和日期为NULL的记录了。
方法二:用高级筛选直接设置逻辑
如果不想写DAX,也可以直接在筛选器里改逻辑:
- 选中你要设置筛选的视觉对象,找到日期列的筛选器
- 点击筛选器的下拉菜单,选择“高级筛选”
- 添加两个筛选条件:
- 第一个条件:选择“大于或等于”,然后输入
EDATE(TODAY(), -N)(N是你要的月数,比如-6就是最近6个月) - 第二个条件:选择“是空白”
- 第一个条件:选择“大于或等于”,然后输入
- 把两个条件之间的逻辑从“与”改成“或”,点击应用就搞定啦!
这两种方法都能实现你想要的效果,度量值的方式更适合需要经常调整筛选范围或者在多个视觉对象复用的场景,高级筛选则更直观快捷。
备注:内容来源于stack exchange,提问作者Roberto92
相关产品推荐
相关产品推荐

