内容阅读
在知识库中专注阅读,并随时返回相关工具与课程
ORA-00937常见语法
不是单组组函数
Not a single-group group function
错误描述
SELECT 列表同时包含聚合和非聚合表达式,但没有 GROUP BY 子句来定义分组。
可能原因
- 混合使用聚合(COUNT、SUM)和非聚合列但没有 GROUP BY
- GROUP BY 子句缺少必需的列
- 在 SELECT 中将标量列与聚合一起使用
解决方案
- 1为所有非聚合列添加 GROUP BY:SELECT col1, COUNT(*) FROM t GROUP BY col1;
- 2如果需要完全聚合,从 SELECT 中删除非聚合列
- 3如果需要详细和聚合数据,使用分析函数
诊断命令
-- Review SELECT list and ensure all non-aggregate columns are in GROUP BY#syntax#group-by#aggregate#single-group