> select * from site, count(*) as count
> from myTable
> where year(created_at) = 2012
> group by site order by count DESC limit 10000
我正在选择大量的数据,这些数据基本上具有非常长且无用的尾部。
我正在尝试切断此查询,因此它不会显示少于500个结果的内容。
我为解决方案所做的所有谷歌搜索都没有证明是非常有帮助的。
知道如何构建查询以限制此数据仅显示计数为500或更多的网站吗?
答案 0 :(得分:2)
select * from site, count(*) as count
from myTable
where year(created_at) = 2012
group by site having count>500 order by count DESC limit 10000
如果您只想选择结果超过500的行,则需要“有计数> 500”。
WHERE不适用于聚合函数。
答案 1 :(得分:0)
select
site ,
count(*) as val
from
myTable
where
year(created_at) = 2012
and
val > 500
group by
site
HAVING COUNT(*) > 500
修改的
要点Sean - 我意识到我使用的是MSSQL语法,而不是MySQL