请教DAX中VALUES函数在该CALCULATE度量值中的作用及空白行原因
度量值中VALUES函数的作用与空白行原因解析

对应的DAX度量值代码如下:
Sales of Audio (VALUES) = CALCULATE( [Total Sales], 'Product Category'[Category] = "Audio", VALUES( 'Product Category'[Category] ) )
一、VALUES函数在这里的作用
VALUES的核心作用是锁定当前行的分类上下文:它会提取当前表格行对应的Product Category[Category]非重复值,生成一个精准的筛选器传入CALCULATE。换而言之,它强制CALCULATE必须考虑当前行显示的分类,不能脱离这个上下文去计算。
二、空白行出现的原因
Audio以外的分类行显示空白,本质是两个筛选条件冲突导致的:
- 第一个筛选条件
'Product Category'[Category] = "Audio"要求只统计Audio分类的销售额 - 第二个筛选条件
VALUES(...)要求统计当前行对应的分类(比如Video、Electronics等)的销售额
这两个条件没有交集,不存在同时属于Audio和其他分类的产品,所以CALCULATE找不到符合条件的数据,[Total Sales]自然返回空白。
如果希望只显示Audio行、不保留其他空白行,直接移除VALUES( 'Product Category'[Category] )参数即可。
内容的提问来源于stack exchange,提问作者Minh Tao
相关产品推荐
相关产品推荐

