轻轻松松学数据库!!SQL Server 2008是微软的SQL Server数据库中的最新版本,在该版本的数据库产品中融入了更多商业智能的内容。本书中也使用了一篇专门讲解了与商业智能有关的一些内容。 本书总分为5篇,共21章。第一篇主要讲解数据库的基础,包括数据库的概念及安装。第二篇讲解数据库管理的常用知识,包括数据库的管理、表的管理、确保数据的完整性及用户权限的设置等内容。第三篇主要讲解SQL的编程,包括T-SQL语言、存储过程及触发器。第四篇讲解与商业智能有关的内容,包括集成服务、报表服
GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
1、概述
“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。
2、原始表
3、简单Group By
示例1
select 类别, sum(数量) as 数量之和 from A group by 类别
返回结果如下表,实际上就是分类汇总。
4、Group By 和 Order By
示例
如图:
其中Num是自增长列,Operation是分类标签,count是汇总数据 脚本如下: 代码如下: select Num=row_number() OVER(order BY HT_Resv.OperationStatus),HT_Resv.OperationStatus , CASE HT_Resv.OperationStatus WHEN ‘3’ THEN ‘成功’ WHEN ‘4’ THEN ‘失败’ end as ‘Status’,count(HT_Resv.Id) as ‘C
order by 从英文里理解就是行的排序方式,默认的为升序。 order by 后面必须列出排序的字段名,可以是多个字段名。
group by 从英文里理解就是分组。必须有“聚合函数”来配合才能使用,使用时至少需要一个分组标志字段。
什么是“聚合函数”?
像sum()、count()、avg()等都是“聚合函数”
使用group by 的目的就是要将数据分类汇总。
一般如:
select 单位名称,count(职工id),sum(职工工资) form [