2012-07-10 50 views
0

如何过滤下面的查询中的计数列以仅显示计数大于1的行?在sql查询中过滤计数结果

select FirstName, COUNT(*) as [CountTickets] from tblParkingTickets 
group by FirstName 
order by [CountTickets] desc 

这不起作用:

select FirstName, COUNT(*) as [CountTickets] from tblParkingTickets 
where [CountTickets] > 1 
group by FirstName 
order by [CountTickets] desc 

感谢

回答

7

HAVING:组之前

HAVING COUNT(*) > 1 

WHERE通过过滤器(因此COUNT并不意味着什么)。分组后的HAVING过滤器。

0
select * from (select FirstName, COUNT(*) mycount from tblParkingTickets 
group by FirstName 
order by 2 desc) where mycount > 1 

试试这个