日期:2014-05-16  浏览次数:20456 次

having 的使用
mysql中为什么需要使用having ? 子句呢? 那是因为where条件子句中 where关键字无法与合计函数一起使用 比如 where count(money)>900 这是不允许的,group by 只是过滤行过滤。所以就需要用到having子句了  having count(money)>900 是允许的
O_Id	OrderDate	OrderPrice	Customer
1	 2008/12/29	 1000	             Bush
2	 2008/11/23	 1600	            Carter
3	 2008/10/05	 700	             Bush
4	 2008/09/28	 300	            Bush
5	 2008/08/06	 2000	             Adams
6	 2008/07/21	 100	            Carter



现在我们希望查找客户 "Bush" 或 "Adams" 拥有超过 1500 的订单总金额。
我们在 SQL 语句中增加了一个普通的 WHERE 子句:
SELECT Customer,SUM(OrderPrice) FROM Orders
WHERE Customer='Bush' OR Customer='Adams'
GROUP BY Customer
HAVING SUM(OrderPrice)>1500


结果集
Customer	SUM(OrderPrice)
Bush	2000
Adams	2000