SQL中Group By的使用
来源:互联网 发布:淘宝神笔怎么用 编辑:程序博客网 时间:2024/06/06 00:17
1.概述
“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。(我们可以简单的理解为分类汇总)
2.有趣的用法
我们这里有一张表A。
3.简单的例子
示例1
Select 类别, Sum(数量) As 数量之和From AGroup By 类别
返回结果如下表,实际上就是分类汇总。
4.Group By 和 Order By
示例2
Select 类别, Sum(数量) AS 数量之和From AGroup By 类别Order By Sum(数量) desc
返回结果如下表注:SQL中默认为升序(ASC),想要降序需要添加desc
5.Group By中Select指定的字段限制
group by语句中select指定的字段必须是“分组依据字段”,其他字段若想出现在select中则必须包含在聚合函数中,常见的聚合函数如下表:
注:count(*)将返回表格中所有存在的行的总数包括值为null的行,然而count(列名)将返回表格中除去null以外的所有行的总数(有默认值的列也会被计入).
distinct 列名,得到的结果将是除去值为null和重复数据后的结果
示例3:求各组平均值
Select 类别, Avg(数量) AS 平均值From AGroup By 类别
示例4:求各组记录数目
Select 类别, Count(*) AS 记录数From A Group By 类别
6.Having与Where的区别
where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,where条件中不能包含聚组函数,使用where条件过滤出特定的行。
having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having 条件过滤出特定的组,也可以使用多个分组标准进行分组。
示例6
Select 类别, Sum(数量) As 数量之和 From AGroup By 类别Having Sum(数量) > 18
示例7:Having和Where的联合使用方法
Select 类别, SUM(数量)From AWhere 数量 gt;8Group By 类别Having SUM(数量) gt; 10
阅读全文
2 0
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用
- SQL中Group By的使用 【转】
- SQL中Group By的使用
- SQL中Group By的使用
- ASP.NET MVC如何在一个同步方法(非async)方法中等待async方法
- 大数计算阶乘和
- 算法提高 班级排名
- 初窥javaScrit权威指南,第六章对象(1)
- 2017.10.7 最长上升子序列 思考记录
- SQL中Group By的使用
- @Transactional配置总结
- Linux 安装zabbix服务端
- java循环结构
- spring boot项目实战-集合操作
- 动态规划-647. Palindromic Substrings
- 为你的应用兼容iphone X
- Centos7搭建swarm集群
- 软件工程师与码农的区别