MySQL USING 和 HAVING 用法

USING

用于表连接时给定连接条件(可以理解为简写形式),如

[sql] view plain copy  print?

  1. SELECT * FROM table1   
  2. JOIN table2 ON table1.id = table2.id   

使用 USING 可以写为

[sql] view plain copy  print?

  1. SELECT * FROM table1   
  2. JOIN table2 USING(id)  

就这么简单

HAVING

引入 HAVING 是因为 WHERE 无法和统计函数一起使用

如表 order (定单)有如下字段:

id, date, price, customer

查找订单总额少于2000的客户可以这样写:

[sql] view plain copy  print?

  1. SELECT customer, SUM(price) FROM order  
  2. GROUP BY customer   
  3. HAVING SUM(price)<2000  

查找指定客户中订单超过1500的订单总额:

[sql] view plain copy  print?

  1. SELECT  customer,SUM(price) FROM order  
  2. WHERE customer=’…’ OR customer = ‘…’   
  3. GROUP BY customer   
  4. HAVING SUM(price) > 1500   
  5.  

猜你喜欢

转载自blog.csdn.net/zhangdaohong/article/details/72875067