SQL HING 子句介绍

来源:网络时间:2017-03-13 10:10:16

  在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。


  SQL HAVING 语法

  SELECT column_name, aggregate_function(column_name)

  FROM table_name

  WHERE column_name operator value

  GROUP BY column_name

  HAVING aggregate_function(column_name) operator value


  SQL HAVING 实例

  我们拥有下面这个 "Orders" 表:



O_IdOrderDateOrderPriceCustomer
12008/12/291000Bush
22008/11/231600Carter
32008/10/05700Bush
42008/09/28300Bush
52008/08/062000Adams
62008/07/21100Carter

  现在,我们希望查找订单总金额少于 2000 的客户。

  我们使用如下 SQL 语句:

  SELECT Customer,SUM(OrderPrice) FROM Orders

  GROUP BY Customer

  HAVING SUM(OrderPrice)<2000

  结果集类似:

CustomerSUM(OrderPrice)
Carter1700

  现在我们希望查找客户 "Bush" 或 "Adams" 拥有超过 1500 的订单总金额。

  我们在 SQL 语句中增加了一个普通的 WHERE 子句:

  SELECT Customer,SUM(OrderPrice) FROM Orders

  WHERE Customer='Bush' OR Customer='Adams'

  GROUP BY Customer

  HAVING SUM(OrderPrice)>1500

  结果集:

CustomerSUM(OrderPrice)
Bush2000
Adams2000

文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站) 联系邮箱:rjfawu@163.com