Power BI中DAX查询仅显示自然列不显示度量值的问题排查
DAX查询仅返回表物理列、不显示度量值的原因及解决思路
原因
度量值是基于上下文动态计算的虚拟值,并非存储在表中的物理列。直接使用EVALUATE TOPN(100, 'mytable')查询表对象时,只会返回表本身包含的6个常规物理列,不会自动加载关联的度量值。
解决思路
1. 显式指定要返回的列与度量值
使用ADDCOLUMNS或SELECTCOLUMNS函数,在原表的基础上追加需要的度量值,构造包含物理列和计算值的新表后再取TOPN:
- 示例(ADDCOLUMNS):
EVALUATE TOPN(100, ADDCOLUMNS( 'mytable', "度量值A", [度量值A], "度量值B", [度量值B] -- 按需添加其余度量值 ) )
- 示例(SELECTCOLUMNS,精准选择列):
EVALUATE TOPN(100, SELECTCOLUMNS( 'mytable', "常规列1", 'mytable'[常规列1], "常规列2", 'mytable'[常规列2], "度量值C", [度量值C], "度量值D", [度量值D] ) )
2. 按维度聚合后关联度量值
如果度量值是聚合类计算(如求和、平均值),可使用SUMMARIZE按表的维度列分组,再关联对应的度量值:
EVALUATE TOPN(100, SUMMARIZE( 'mytable', 'mytable'[常规列1], 'mytable'[常规列3], -- 按需添加其他维度列 "总销量", [总销量度量值], "平均利润", [平均利润度量值] ) )
内容的提问来源于stack exchange,提问作者Eric Jorgensen
相关产品推荐
相关产品推荐

