HAVING 子句中的列 'sc.Sno' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中 为什么会报错
时间: 2024-05-20 08:10:39 浏览: 143
使用HAVING短语筛选最终输出结果-SQL 语言基础
这是因为在 SQL 中,如果 SELECT 语句中同时包含了聚合函数和非聚合函数的列,那么非聚合函数的列必须要被包含在 GROUP BY 子句中,否则会报错,提示无效列。
在这个错误中,'sc.Sno' 列没有被包含在 GROUP BY 子句中,但同时出现在了 HAVING 子句中,因此会提示该列无效。你需要将该列加入 GROUP BY 子句,或者将 HAVING 子句中的非聚合函数替换成聚合函数。
阅读全文