SQL中group by的使用

group By对数据进行分组,所谓分组就是将一个“数据集”划分为若干个“小区域”,然后针对若干个小区域进行数据处理。

数据表A

1、group by分组操作

例:select 类别,sum(数量) as 数量之和 from A group by 类别

使用group by的时候一定要对你想要操作的列写在group by之后

查询结果:

2、group by和order by的联合使用

例:select 类别,sum(数量) as 数量之和 from A group by 类别 order by sum(数量)

查询结果:

注意:在Access数据库中排序不能使用聚合函数别名“类别 order by 数量之和 ”,但是在SQL server中可以

3、group by和select指定字段限制

例:select  类别,sum(数量)as 数量之和,摘要 from A group by 类别 order by 类别 desc

查询结果:    出现错误

注意:这样写就会出现错误,因为select指定的字段group by并没有进行分组操作,

           所以在用group by的时候select指定的字段要么写包含在group by语句后面,作为分组的依据,要么被包含的聚合函数中

4、group by和聚合函数

      group by语句只中select指定的字段必须是“分组依据字段”,其他字段若想出现在select中,则必须包含在聚合函数中,常见的聚合函数如下表:

函数作用支持性
sum(列名)求和    
max(列名)最大值    
min(列名)最小值    
avg(列名)平均值    
first(列名)第一条记录仅Access支持
last(列名)最后一条记录仅Access支持
count(列名)统计记录数注意和count(*)的区别

例:求各组平均值

   select 类别,avg(数量)as 平均值 from A group by 类别

   求各组记录数目

   select 类别,count(*) as 记录数 from group by 类别

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值