标签:style blog ar color 使用 sp on 数据 div
测试语句:
1 USE [AIS20140113215649] 2 GO 3 /****** Object: Table [dbo].[t_studet] Script Date: 10/29/2014 16:35:48 ******/ 4 SET ANSI_NULLS ON 5 GO 6 SET QUOTED_IDENTIFIER ON 7 GO 8 if exists (select * from sysobjects where xtype=‘U‘ and name = ‘t_studet‘) 9 drop table t_studet 10 GO 11 CREATE TABLE [dbo].[t_studet]( 12 [ID] [int] NOT NULL, 13 [sex] [nchar](10) NOT NULL, 14 [class] [nchar](10) NOT NULL, 15 [score] [int] NOT NULL, 16 CONSTRAINT [PK_t_studet] PRIMARY KEY CLUSTERED 17 ( 18 [ID] ASC 19 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, 20 ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 21 ) ON [PRIMARY] 22 GO 23 24 select * from t_studet; 25 26 insert into t_studet values(1,‘男‘,‘二年级‘,1); 27 insert into t_studet values(2,‘男‘,‘三年级‘,4); 28 insert into t_studet values(3,‘女‘,‘二年级‘,10); 29 insert into t_studet values(4,‘女‘,‘三年级‘,16);
查询结果分析
1 ----明细查询 2 select * from t_studet;
ID sex class score
----------- ---------- ---------- -----------
1 男 二年级 1
2 男 三年级 4
3 女 二年级 10
4 女 三年级 16
----分组查询 select sex,class,COUNT(ID),SUM(score) from t_studet group by sex,class;
sex class
---------- ---------- ----------- -----------
男 二年级 1 1
女 二年级 1 10
男 三年级 1 4
女 三年级 1 16
----分组查询并合计 select class,sex,COUNT(ID),SUM(score) from t_studet group by class,sex with rollup;
class sex
---------- ---------- ----------- -----------
二年级 男 1 1
二年级 女 1 10
二年级 NULL 2 11
三年级 男 1 4
三年级 女 1 16
三年级 NULL 2 20
NULL NULL 4 31
----分组查询并合计,标记合计列 select case when(grouping(sex)=1 and grouping(class)=1) then ‘总计‘ else class end, case when(grouping(sex)=1 and grouping(class)=0) then ‘小计‘ when(grouping(sex)=1 and grouping(class)=1) then ‘‘ else sex end, COUNT(ID),SUM(score) from t_studet group by class,sex with rollup; -------------左连接式的小计 ----grouping(class)=0 代表 有数据 ----grouping(class)=1 代表 无数据
---------- ---------- ----------- -----------
二年级 男 1 1
二年级 女 1 10
二年级 小计 2 11
三年级 男 1 4
三年级 女 1 16
三年级 小计 2 20
总计 4 31
1 ----分组查询并合计,标记合计列,使用条件过滤 2 select 3 case when(grouping(sex)=1 and grouping(class)=1) then ‘总计‘ else class end, 4 case 5 when(grouping(sex)=1 and grouping(class)=0) then ‘小计‘ 6 when(grouping(sex)=1 and grouping(class)=1) then ‘‘ 7 else sex 8 end, 9 COUNT(ID),SUM(score) 10 from t_studet 11 group by class,sex 12 with rollup having (grouping(sex)=0 and grouping(class)=0)
---------- ---------- ----------- -----------
二年级 男 1 1
二年级 女 1 10
三年级 男 1 4
三年级 女 1 16
select class,sex,COUNT(ID),SUM(score) from t_studet group by sex,class with cube -------------全连接式的小计
class sex
---------- ---------- ----------- -----------
二年级 男 1 1
二年级 女 1 10
二年级 NULL 2 11
三年级 男 1 4
三年级 女 1 16
三年级 NULL 2 20
NULL NULL 4 31
NULL 男 2 5
NULL 女 2 26
标签:style blog ar color 使用 sp on 数据 div
原文地址:http://www.cnblogs.com/wmdcnz/p/4172004.html