SQL where and having

HAVING 支持全部WHERE操做符,他們語法是相同的,只是關鍵字差異,HAVING支持全部WHERE的條件,惟一的差異是WHERE過濾行,而HAVING過濾分組。另外一種理解方法,WHERE在數據分組前進行過濾,HAVING在數據分組後進行過濾。這是一個重要區別,WHERE排除的行不包括在分組中。這可能會改變計算值,從而影響HAVING子句中基於這些值過濾掉的分組。sql

SELECT vend_id, COUNT(*) AS num_prods FROM products WHERE prod_price>=10 GROUP BY vend_id HAVING COUNT(*) >= 2

WHERE子句過濾全部prod_price至少爲10的行。而後按vend_id分組數據,HAVING子句過濾計數爲2或2以上的分組code

相關文章
相關標籤/搜索