在使用聚合函數(shù)之前,我們可以通過(guò)where對(duì)查詢加限制條件,那么如果在group by之后我們要對(duì)分組里面的數(shù)據(jù)再加限制條件怎么辦呢?答案是having。
HAVING子句可以讓我們篩選成組后的各組數(shù)據(jù).
WHERE子句在聚合前先篩選記錄.也就是說(shuō)作用在GROUP BY 子句和HAVING子句前.
而 HAVING子句在聚合后對(duì)組記錄進(jìn)行篩選。
having子句出現(xiàn)的數(shù)據(jù)必須在group by 之后,order by 之后
例如在上一篇中對(duì)name按照出現(xiàn)次數(shù)排序之后,我們還想只查出名字里面含有l(wèi)in的數(shù)據(jù),可以這樣寫(xiě):
select name ,count(*) from data group by name having name like '%lin%' order by couny(*) DESC
]]>