您的位置:首页 > 数据库 > MySQL

mysql - 分组group by、having

2016-02-22 21:35 531 查看
1. 分组:group by语句

group by必须跟在where子句里的条件之后,在order by之前(如果有的话),如下:

select column1, column2

from table1, table2

where conditions

group by column1, column2

order by column1, column2


1)被选中的字段(查询中select了的字段,如column1,column2)才能而且必须要出现在group by子句中,除了汇总函数;如果字段在select里面找不到,就不能用于group by子句。这是合乎逻辑的-如果数据不显示,如何对其分组呢。

2)group by子句里面的字段次序不比与select子句里面的相同,分组是平等的,跟次序无关。

2.HAVING子句

having子句在select与group by联合使用时,用于告诉group by在输出里应当包含哪些分组。having对于group by的作用相当于where对于select的作用。因此,使用having子句可以让结果包含或者是去除整组的数据。

having必须跟在group by之后,order by之前
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: