如何使用DAX比较日期表中日期类型字段的值
DAX日期条件比对正确实现方案
你当前写法不生效的核心原因是:DAX不会将06/01/2019识别为日期值,会将其判定为除法算术表达式,计算结果为约0.00297的小数,和日期类型的列比对时永远无法满足条件。
可以选择以下任意一种稳妥的实现方式:
- 方案1:使用
DATE()函数构造日期值(最推荐,不受系统区域格式影响)
正确写法:IF( 'date'[date] > DATE(2019,6,1), <替换为你的实际计算逻辑> )DATE()函数的参数顺序为年、月、日,直接输入对应数值即可,无需匹配日期列的显示格式,是DAX日期比对的首选方案。 - 方案2:将日期字符串转换为日期类型后比对
如果要使用文本格式的日期,需要用双引号包裹后通过DATEVALUE()转换,或者直接使用ISO标准格式的日期文本:
写法示例1:IF( 'date'[date] > DATEVALUE("06/01/2019"), <替换为你的实际计算逻辑> )
写法示例2:IF( 'date'[date] > "2019-06-01", <替换为你的实际计算逻辑> )
注意:
date是DAX内置函数名,引用日期表时建议加上单引号写为'date',避免部分场景下出现解析歧义。
内容的提问来源于stack exchange,提问作者zain qazi
相关产品推荐
相关产品推荐

