LOD表达式多筛选问题:固定Pants品类的Sales求和结果异常
解决固定维度筛选下的Sales求和问题
正确的计算字段表达式:
{fixed [date], [location] : sum(if [categories]='pants' then [Sales] else 0 end)}原表达式的问题:
你之前用的{fixed [categories]='pants' : sum(sales)}不符合Tableau LOD的语法规则——fixed子句中只能指定维度字段,不能直接添加条件判断。另外,这个表达式会忽略视图中的date、location筛选器,直接计算全量数据里所有pants的Sales总和,和你需要保留其他筛选器作用的需求不匹配。逻辑说明:
通过在sum函数里嵌套if条件,只对categories为pants的行汇总Sales;同时fixed子句包含date和location,确保计算结果会跟随这两个维度的筛选条件变化,既固定了只统计pants的Sales,又保留了其他筛选器的生效权。视图适配:
把这个计算字段拖入度量值区域后,即便视图行维度是全量categories,也会展示对应date、location下pants的Sales总和,date、location等筛选器的设置也会正常影响计算结果。
内容的提问来源于stack exchange,提问作者Tim
相关产品推荐
相关产品推荐

