首页 > 解决方案 > Tableau 中的计算包含错误

问题描述

我需要使用以下代码创建一个计算字段:

CASE [dimension]
    WHEN 'case1' then SUM([col1])/SUM([col2])
    WHEN 'case2' then SUM([col1])/SUM([col2])
    WHEN  'case3' then SUM([col1])/SUM([col2])
ELSE 
    SUM([col1])/SUM([col3])
END

错误。“不能混合聚合和非聚合比较或导致'case'表达式”。

请您的帮助。谢谢!

标签: sqltableau-api

解决方案


您必须用聚合函数包装 [dimension]:

CASE MIN([dimension])
    WHEN 'case1' then SUM([col1])/SUM([col2])
    WHEN 'case2' then SUM([col1])/SUM([col2])
    WHEN  'case3' then SUM([col1])/SUM([col2])
    ELSE SUM([col1])/SUM([col3])
END

或添加到GROUP BY ..., [dimension]


推荐阅读