码迷,mamicode.com
首页 > 其他好文 > 详细

连接查询和分组查询

时间:2020-04-20 21:49:30      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:信息   like   select   查询语句   str   image   alt   order   where   

技术图片

 

 

 比如要查询每个年级的总成绩,一个年级一个年级的输入会显得代码冗余,这时用group by进行每个年级依次查询,代码会精简很多

 

分组查询语句:

技术图片

 

 

 比如:要计算每个年级各有多少人?代码如下                             

select   count(*)as 人数,Grade as 年级

from student

group by Grade

 

Group by 的作用:

对查询数据进行分组。

根据上述代码,在select 中加入聚合函数后,普通列如果不使用group by 则爆红,会提醒使用group by 。

如果不使用 group by ,能运行出来的话,我猜想运行结果应该是

技术图片

 所以使用group by 可以算出来每个年级的人数

技术图片

技术图片

注意:order by 对已经查询的信息进行排序。如果我们没有用order by进行排序,并且group by后面有多个列名,那么默认按照group by  

最后一个列名进行排序,如果想要对某一列进行排序,可以用 order by 。

分组查询:

语句:

技术图片

 

Question:  查询表(Student)中地址中包括上海,总人数超过十五的年级

select   count(*) as 人数,Grade as 年级

from student

where address like ‘%上海%‘

having count(*)>15

 

where 和 having 的区别:

where 对普通列条件的限制

having 对聚合函数条件的限制

 

 

 

 

 

连接查询和分组查询

标签:信息   like   select   查询语句   str   image   alt   order   where   

原文地址:https://www.cnblogs.com/yangshuwenzuibang/p/12740330.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!