MySQL Easy不仅仅是功能

时间:2013-11-29 19:53:17

标签: mysql database

我正在尝试这样做:

SELECT Filmai.Pagrind_atlik, ( COUNT(Filmai.Pagrind_atlik)) AS Kiek_kartu_filmavosi 
FROM Filmai 
WHERE  Kiek_kartu_filmavosi >2 
GROUP BY Filmai.Pagrind_atlik;   

但它不允许我做> 2件事。那么也许有任何建议吗?

2 个答案:

答案 0 :(得分:5)

您需要使用HAVING子句

SELECT Filmai.Pagrind_atlik, 
( COUNT(Filmai.Pagrind_atlik)) AS Kiek_kartu_filmavosi
FROM Filmai  
GROUP BY Filmai.Pagrind_atlik
HAVING Kiek_kartu_filmavosi >2;
WHERE之前应用

GROUP BY,之后应用HAVING(并且可以对聚合进行过滤)。

答案 1 :(得分:5)

如果要限制聚合函数的结果,则不能在WHERE子句中使用它。你必须使用HAVING:

SELECT Filmai.Pagrind_atlik,
  COUNT(Filmai.Pagrind_atlik) AS Kiek_kartu_filmavosi
FROM Filmai
GROUP BY COUNT(Filmai.Pagrind_atlik)
HAVING COUNT(Filmai.Pagrind_atlik) > 2