Mysql-where子句与having子句的区别


  • 顺序问题:where子句必须放在group子句之前;而having子句必须在group子句之后

  1.Where子句

  

  2.having子句

   

  • 字段问题:where子句只可以处理数据表中的数据;having只能处理在group by子句中出现的字段select的列的字段聚合函数处理过的列外部查询中的字段。having根据前面查询出来的是什么就可以在后面接什么

  1.having子句的字段必须出现在检索中(select的查询列、group by中的列、外查询中的列)或者是聚合函数处理后的列,可以是别名

   

  

  2.where子句中的字段必须是数据表(物理表)中的列名,不能是别名或者聚合函数

  

 

  • having通常是与group子句连用,用于进一步说明

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM