跳到主要内容
内容阅读

在知识库中专注阅读,并随时返回相关工具与课程

ORA-00937常见语法

不是单组组函数

Not a single-group group function

错误描述

SELECT 列表同时包含聚合和非聚合表达式,但没有 GROUP BY 子句来定义分组。

可能原因

  • 混合使用聚合(COUNT、SUM)和非聚合列但没有 GROUP BY
  • GROUP BY 子句缺少必需的列
  • 在 SELECT 中将标量列与聚合一起使用

解决方案

  1. 1为所有非聚合列添加 GROUP BY:SELECT col1, COUNT(*) FROM t GROUP BY col1;
  2. 2如果需要完全聚合,从 SELECT 中删除非聚合列
  3. 3如果需要详细和聚合数据,使用分析函数

诊断命令

-- Review SELECT list and ensure all non-aggregate columns are in GROUP BY
#syntax#group-by#aggregate#single-group

同类错误码(语法)

想系统掌握这个领域?

「语法」在课程 Day 1-10 中有 10 篇完整实战教程

完整操作步骤真实截图踩坑总结
免费试读查看完整课程¥128/月起 · 解锁全部 2738+ 篇
ORA-00937: 不是单组组函数 - 原因与解决方案 | DBA 学习之路