0

我正在写一个查询:

SELECT COUNT( * ) AS  count , var1, var2
FROM  table 
GROUP BY var1, var2
ORDER BY  count DESC 

这个查询有效,但它抓住了一切。我试图只获得 count > x (任意数字)的结果。

我试过使用WHERE count > x并得到:

1054 - 'where 子句'中的未知列'Spammers'

如果我使用HAVING count > x(在最后添加)我得到:

1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在附近使用的正确语法

其他细节:使用Mysql 4.1

4

2 回答 2

0

您可以使用HAVING count(*) > x

哪里x是整数。

SELECT COUNT( * ) AS  count , var1, var2
FROM  table 
GROUP BY var1, var2
ORDER BY count(*) DESC 
Having count(*) > x
于 2011-02-14T16:59:57.157 回答
0

你需要使用:

WHERE count(*) > x

您不能在 WHERE 子句中使用别名。

您还可以使用:

HAVING count(*) > x
于 2011-02-14T17:00:40.853 回答