我正在尝试这样做:
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件事。那么也许有任何建议吗?
答案 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