没有聚合函数的 GROUP BY 函数
理解 GROUP BY 操作可能具有挑战性,特别是在排除聚合函数时。本文深入探讨了这个概念及其含义。
在提供的示例中,您尝试在没有聚合函数的情况下对 EMP 表执行 GROUP BY 操作,导致出现多个错误。错误消息“不是 GROUP BY 表达式”表示 GROUP BY 子句中指定的列必须与 SELECT 语句中选择的列相匹配。
要理解为什么这是必要的,了解如何执行此操作至关重要GROUP BY 将多行转换为单行。组合行时,需要指导处理具有不同值的列。因此,您在 SELECT 语句中包含的每一列都必须:
例如,考虑下表:
Name | OrderNumber ------------------ John | 1 John | 2
如果仅对名称执行 GROUP BY,结果需要一个选择 OrderNumber 的规则。选项包括:
在 GROUP BY 子句中包含 OrderNumber: 这会生成两行:
使用聚合函数:
通过匹配 SELECT 和 GROUP BY 语句中的列,Oracle 确保数据操作的一致性并避免歧义。
以上是为什么没有聚合函数的 SQL'GROUP BY”查询会返回错误?的详细内容。更多信息请关注PHP中文网其他相关文章!