SQL统计——按照各种维度
在SQLserver中可以按照各种维度进行统计,实现与EXCLE一样强大的功能。
--==========================
--Blog:<奔跑的金鱼>
--Desc:<SQL统计>
--Date:<2015-01-07>
--==========================
/*描述:不同员工在不同时间参加不同项目组中,获得的收入*/
IF EXISTS(SELECT * FROM sysobjects where ID=OBJECT_ID(N'tb_Income') and XTYPE='U')
DROP TABLE tb_Income CREATE TABLE [tb_Income]
(
[TeamID] int not null,
[PName] Nvarchar(20) NOT NULL,
[CYear] Smallint NOT NULL,
[CMonth] TinyInt NOT NULL,
[CMoney] Decimal (10,2) Not Null
) ---------------------插入测试数据
INSERT [dbo].[tb_Income]
SELECT 1,'荆天明',2011,2,5600
union ALL SELECT 1,'荆天明',2011,1,5678
union ALL SELECT 1,'荆天明',2011,3,6798
union ALL SELECT 2,'荆天明',2011,4,7800
union ALL SELECT 2,'荆天明',2011,5,8899
union ALL SELECT 3,'荆天明',2012,8,8877 union ALL SELECT 1,'高月',2011,1,3455
union ALL SELECT 1,'高月',2011,2,4567
union ALL SELECT 2,'高月',2011,3,5676
union ALL SELECT 3,'高月',2011,4,5600
union ALL SELECT 2,'高月',2011,5,6788
union ALL SELECT 2,'高月',2012,6,5679
union ALL SELECT 2,'高月',2012,7,6785 union ALL SELECT 2,'端木蓉',2011,2,5600
union ALL SELECT 2,'端木蓉',2011,3,2345
union ALL SELECT 2,'端木蓉',2011,5,12000
union ALL SELECT 3,'端木蓉',2011,4,23456
union ALL SELECT 3,'端木蓉',2011,6,4567
union ALL SELECT 1,'端木蓉',2012,7,6789
union ALL SELECT 1,'端木蓉',2012,8,9998 union ALL SELECT 3,'高渐离',2011,7,6798
union ALL SELECT 3,'高渐离',2011,10,10000
union ALL SELECT 3,'高渐离',2011,9,12021
union ALL SELECT 2,'高渐离',2012,11,8799
union ALL SELECT 1,'高渐离',2012,12,10002 union ALL SELECT 3,'少司命',2011,8,7896
union ALL SELECT 3,'少司命',2011,9,7890
union ALL SELECT 2,'少司命',2011,10,7799
union ALL SELECT 2,'少司命',2011,11,9988
union ALL SELECT 2,'少司命',2012,9,34567
union ALL SELECT 3,'少司命',2012,12,5609 --------------------------------查询表中数据 select * from tb_Income
/*CUBE运算符生成的结果集是多维数据集,多维数据集是事实数据的扩展,事实数据即记录个别时间的数据,扩展建立在用户准备分析的列上,这些列被称为维,多维数据集是一个结果集,其中包含各纬度所有可能的交叉表格*/ ------------------------------使用单个维度进行统计
SELECT PName as 员工姓名,
SUM(CMoney) 总收入
FROM tb_Income
GROUP BY CUBE (PName)
------------------------------使用多个维度进行统计
SELECT TeamID As 项目组编号,PName as 员工姓名,
SUM(CMoney) 总收入
FROM tb_Income
GROUP BY CUBE (PName,TeamID)
上面是按照CUBE进行统计的,接下来是使用ROLLUP进行统计
-------------------------------使用ROLLUP进行统计
SELECT TeamID As 项目组编号,PName as 员工姓名,
SUM(CMoney) 总收入
FROM tb_Income
GROUP BY ROLLUP (PName,TeamID)
- CUBE 生成的结果集显示了所选列中值的所有组合的聚合。
- ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。
SQL统计——按照各种维度的更多相关文章
- MS SQL统计信息浅析下篇
MS SQL统计信息浅析上篇对SQL SERVER 数据库统计信息做了一个整体的介绍,随着我对数据库统计信息的不断认识.理解,于是有了MS SQL统计信息浅析下篇. 下面是我对SQL Serve ...
- sql统计字符串出现次数技巧
在牛客网上看到一道题,感觉挺有趣,是用sql统计字符串出现的次数. 这里提供一种思路,比如统计字符串A中子串B的出现次数: SELECT (LENGTH(A) - LENGTH(REPLACE(A, ...
- sql 统计常用的sql
统计常用的sql 统计常用的sql语句: 今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0 昨天的所有数据:s ...
- MS SQL 统计信息浅析上篇
统计信息概念 统计信息是一些对象,这些对象包含在表或索引视图中一列或多列中的数据分布有关的统计信息.数据库查询优化器使用这些统计信息来估计查询结果中的基数或行数. 通过这些基数估计,查询优化器可以生成 ...
- mysql 按年度、季度、月度、周、日SQL统计查询
创建Table CREATE TABLE `test` ( `cdate` datetime DEFAULT NULL, `id` ) DEFAULT NULL, `name` ) DEFAULT N ...
- sql统计重复数据
sql代码如下: 统计重复的数据 select MingCheng from tabShouFeiGongShi group by MingCheng having count(MingCheng) ...
- ***SQL统计语句总结(运用场景:运营分析,财务分析等)
-- 统计三月的每天的数据量 ,) ,) ; --统计从5月19到6月29的数据量 , ) AS '日期', count(*) AS '医说数' FROM xm_feed a WHERE a.feed ...
- sql 统计用的sql
mh:工时 mhtype:工时类型(6种) 字段:userid mhtype mh 001 1 5 001 ...
- SQL 统计某一天的数据量时, 使用 dateValue(字段) 与 between 性能差异很明显。
感觉好久没有写sql语句了... 今天需要写一个统计某一天的数据时,考虑到字段的内容格式是: 2018-12-18 09:36:23 我开始写的是: select count(id) as reCo ...
随机推荐
- 重构22-Break Method(重构方法)
这个重构是一种元重构(meta-refactoring),它只是不停地使用提取方法重构,直到将一个大的方法分解成若干个小的方法.下面的例子有点做作,AcceptPayment方法没有丰富的功能.因此为 ...
- 转:关于视频H264编解码的应用实现
转:http://blog.csdn.net/scalerzhangjie/article/details/8273410 项目要用到视频编解码,最近半个月都在搞,说实话真是走了很多弯路,浪费了很多时 ...
- 【.NET基础】--委托、事件、线程(2)
本文介绍event的使用以及原理,本文接上一篇文章的Demo继续[下载上一篇Demo] 上一篇我们在类(dg_SayHi.cs)里面定义代理了4个Delegate,然后在Button的后台事件中 新建 ...
- 转:C# 获取磁盘及CPU的序列号
原文地址:http://www.cnblogs.com/stray521/archive/2010/08/06/1793647.html //获取磁盘序列号 try { System.Manageme ...
- js标签放在html的什么位置比较好
推荐的是js的script标签放在body的末尾,</body>标签之前,包含在body内! <body> <!--其它Html标签--> <script&g ...
- 让项目管理理论“落地”——读《IT项目经理成长手记》有感
最近利用业余时间阅读了一本好书--<IT项目经理成长手记>(潘东.韩秋泉著).本书的两位作者是神州数码(中国本土最大的整合IT服务提供商)的高管,在书中他们介绍了神州数码在IT项目管理领域 ...
- 如何加密android apk
经过了忙碌的一周终于有时间静下来写点东西了,我们继续介绍android apk防止反编译技术的另一种方法.前两篇我们讲了加壳技术(http://my.oschina.net/u/2323218/blo ...
- Javascript获取URL地址变量参数值的方法
今天碰到在做一个动态页面的时候,需要用到 URL 的参数值来作判断,从而决定某一块内容在当前页面是否显示.例如exampe.html?parm1=xxx&parm2=xxx&parm3 ...
- 001.android初级篇之ToolBar
官方的最新support library v7中提供了新的组件ToolBar,用来替代之前的ActionBar,实现更为弹性的设计在 material design 也对之做了名称的定义:App ba ...
- BeanDefinition的Resource定位——3
1.我们重点看看AbstractRefreshableApplicationContext的refreshBeanFactory方法的实现,这个refreshBeanFactory被FileSyste ...