我有一个非常大的查询,实质上是这样的:
SELECT a FROM
(SELECT a,b,c,d FROM table_name) AS tt
GROUP BY tt.b, tt.c, tt.d
HAVING SUM(tt.b)>0
奇怪的是我得到了错误:
"Unknown column "b" in 'having clause'
当我删除HAVING
子句时,尽管"b"
中有GROUP BY
,但它仍能正常运行。因此b
知道GROUP BY
,但HAVING
知道{。}}。
此外,如果我在第一行中将"SELECT a FROM"
替换为"SELECT * FROM"
,则错误消失,这也很奇怪,因为MYSQL不需要选择HAVING
中使用的列。
你知道为什么我会收到这个错误吗? 谢谢。