-1
我想向我的语句添加WHERE子句,但问题在于,当我添加WHERE子句时,出现“无效使用组功能”错误。MySql,与WHERE子句一起使用
我还尝试替换WHERE子句并将条件写入 JOIN .. ON
部分,但错误仍然存在。
我想添加条件,以便只返回行“SUM(res.ReservationID)= 2”。
-- works but we only want to get the rows in which the SUM = 2
SELECT ctr.ID, ctr.LastName, ctr.FirstName, SUM(res.ReservationID) as ReservierteSitze
FROM customer as ctr
INNER JOIN reservation AS res ON ctr.ID = res.CustomerID
Group by ctr.ID;
这就是HAVING子句的用途。 –
我明白了,它可以直接使用!但为什么我必须使用'HAVING'而不是'WHERE'? – normalUser221
因为WHERE是在GROUP BY之前评估的,所以你不能在那里使用聚合函数。 –