SQL 之 Group By

SQL 之 Group By

Group By从字面意义上理解就是根据By指定的规则对数据进行分组,所谓的分组就是将一个数据表划分成若干个小区域

例如有这么一张表


在执行group by 类别操作之后表就变成了这种形式

无标题文档

类别
a
数量 摘要
5 a2002
2 a2001
11 a2001
b
数量 摘要
10 b2003
6 b2002
3 b2001
c
数量 摘要
9 c2005
9 c2004
8 c2003
7 c2002
4 c2001

因为是按照类别进行分组,所以分组后的表中就只剩下字段类别了,其他的字段全部被保存在中。

注意:中的字段是无法被SELECT关键字访问的,如果访问了就会出错。

例如:  Select 数量 from test group
by 类别;

这时软件就会提示——(在sql server中是这样的,在mysql中是随便列出组中的一列)
选择列表中的列 ‘数量‘ 无效,因为该列没有包含在聚合函数或GROUP BY 子句中。

因为数量摘要字段都在组中,SELECT关键字找不到这两个字段,所以就会出错。

如果只是查询 类别就不会出现问题,因为 类别不在组中,所以SELECT关键字就可以找到该字段。

时间: 2024-10-25 15:33:32

SQL 之 Group By的相关文章

SQL中Group By的使用

SQL中Group By的使用 1.概述 “Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. 2.原始表 3.简单Group By 示例1 select 类别, sum(数量) as 数量之和 from A group by 类别 返回结果如下表,实际上就是分类汇总. 4.Group By 和 Order By 示例2 select 类别, sum(数量) AS 数量之和 fr

sql 的group by order by having 等等与mongo的对应关系

http://docs.mongodb.org/manual/reference/sql-aggregation-comparison/ unwind解释    拆解数组 http://blog.nosqlfan.com/html/3648.html 几种方式做group http://blog.csdn.net/huntzw/article/details/8669986 sql 的group by order by having 等等与mongo的对应关系,布布扣,bubuko.com

C# Linq to sql 实现 group by 统计多字段 返回多字段

Linq to sql 使用group by 统计多个字段,然后返回多个字段的值,话不多说,直接上例子: var wflist = from u in db.TWelFare where u.fy_no == fy_no orderby u.we_no group u by new { weno = u.we_no, wename = u.we_name } into g select new { g.Key.weno, g.Key.wename }; 结果就是根据we_no和we_name的统

PHP模拟SQL的GROUP BY算法

BY JENNER · 2015年1月24日· 阅读次数:25 github地址:https://github.com/huyanping/Zebra-PHP-ArrayGroupBy packagist地址:https://packagist.org/packages/jenner/array_group_by 为什么使用Zebra-PHP-ArrayGroupBy 在如下场景中,我们总是希望能够在php中使用类似mysql的groupby操作: SQL过于复杂,造成数据库运算效率低下 从数据

linq to sql (Group By/Having/Count/Sum/Min/Max/Avg操作符) (转帖)

http://wenku.baidu.com/link?url=2RsCun4Mum1SLbh-LHYZpTmGFMiEukrWAoJGKGpkiHKHeafJcx2y-HVttNMb1BqJpNdwaOpCflaajFY6k36IoCH_D82bk2ccu468uzDRXvG 基于LINQ+to+Entity数据访问技术的应用研究 Group By/Having操作符 适用场景:分组数据,为我们查找数据缩小范围. 说明:分配并返回对传入参数进行分组操作后的可枚举对象.分组:延迟 1.简单形式:

sql中group by使用(转发)

1.概述 2.原始表 3.简单Group By 4.Group By 和 Order By 5.Group By中Select指定的字段限制 6.Group By All 7.Group By与聚合函数 8.Having与Where的区别 9.Compute 和 Compute By 1.概述 “Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. 2.原始表 3.简单Group

曾经很长时间不会写的两个SQL语句(group by,having)

1.统计各部门的平均工资,平均资金(要求同时显示出部门名称,部门编号,部门总人数) SQL> SELECT DNAME 部门名称,D.DEPTNO 部门编号,COUNT(ENAME) 部门总人数,ROUND(AVG(NVL(SAL,0)),2) 部门平均工资,ROUND(AVG(NVL(COMM,0)),1) 部门平均资金 FROM EMP E RIGHT JOIN DEPT D ON E.DEPTNO=D.DEPTNO GROUP BY DNAME,D.DEPTNO ORDER BY D.DE

MYSQL:SQL中Group By的使用

1.概述 "Group By"从字面意义上理解就是根据"By"指定的规则对数据进行分组,所谓的分组就是将一个"数据集"划分成若干个"小区域",然后针对若干个"小区域"进行数据处理. 2.原始表 3.简单Group By 示例1 select 类别, sum(数量) as 数量之和 from A group by 类别 返回结果如下表,实际上就是分类汇总. 4.Group By 和 Order By 示例2

SQL中Group By 的使用

1.概述 “Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. 2.原始表 3.简单Group By 示例1 select 类别, sum(数量) as 数量之和 from A group by 类别 返回结果如下表,实际上就是分类汇总. 4.Group By 和 Order By 示例2 select 类别, sum(数量) AS 数量之和 from A group by 类别