sql - 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'表达式”。
请您的帮助。谢谢!
解决方案
您必须用聚合函数包装 [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]
推荐阅读
- uml - 将 StarUML 类图转换为 MS Visio 类图
- charts - 如何在图表中禁用 LineChart 的动画?
- php - 如何在 Apache2 中动态设置环境变量
- java - 如何在 recyclerview firebase 中动态更改 limitToFirst()?
- notepad++ - 如何在记事本++中粘贴表情符号而不使其变为“??”
- selenium - 使用 selenium webdriver 打开时可见 Chrome Browser Not supported 。而直接在 chrome 中打开时,相同的 URL 有效
- go - 我们可以为 Go 中的错误创建子类型吗?
- error-handling - 为失败类型扩展 Result 时,为什么我得到“方法存在但不满足以下特征界限”?
- java - 有什么方法可以保证 ElasticSearch 索引已被删除
- amazon-web-services - 从 AWS EC2 实例发出 http 请求时的 ETIMEDOUT