sql server 关于 数据汇总分析
CUBE 和 ROLLUP 之间的区别在于:
CUBE 生成的结果集显示了所选列中值的所有组合的聚合。
ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。
例子:
if object_id('a') is not null
drop table a
create table a
(
bm varchar(20), --编码
ck varchar(2), --仓库
sl int --数量
)
insert into a
select '01' ,'a', 6
union all
select '01','b',7
union all
select '02','a',8
union all
select '02','b',9
select * from a
(1)rollup 的用法
SELECT bm, hj=
case when grouping(ck)=0
then
ck
else
bm+'合计'
end
, Sum(sl) as sl
from A
GROUP BY bm, ck WITH ROLLUP
/*
01 a 6
01 b 7
01 01合计 13
02 a 8
02 b 9
02 02合计 17
NULL NULL 30
*/
(2)关于cuble的基本用法。
SELECT bm, ck, Sum(sl) as sl
from A
GROUP BY bm,ck WITH cube
/*
01 a 6
01 b 7
01 NULL
相关文档:
--sql server 2005
-- 1. 表结构信息查询
-- ========================================================================
-- 表结构信息查询
-- 邹建 2005.08(引用请保留此信息)
-- ========================================================================
SELECT
TableName=CASE WHEN ......
--创建一张表
create table stut
(
id int,
na varchar(20)
)
--插入4条数据。
insert into stut values(1,'aa')
insert into stut values(2,'bb')
insert into stut values(3,'df')
insert into stut values(4,'中国')
select * from stut
--根据'df,aa,中国,bb'来进行排序
select * from stut ......
USE [rossic]
GO
/****** Object: StoredProcedure [dbo].[fn_GetLunar] Script Date: 02/23/2010 15:46:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE proc [dbo].[fn_GetLunar]   ......
今天试验使用python连接 sql server 服务器。我记得以前使用ado连接access非常顺利,但是今天使用ado连接sql server竟然不成功。在python里面的出错信息都显示为转移序列,费了半天劲才搞明白:无效的类别字符串。
是连接字符串吗?测试了好几个 确认无误的数据库连接字符串,也是如此 。上网搜索,是有可能是 com的类别字 ......
原文地址:http://topic.csdn.net/u/20100203/17
/8F916471-597D-481A-B170-83BCEFE3B199.html
============================我是分割
符================================
应一个朋友的要求,贴上收藏的SQL常用分页的办法~~
表中主键必须为标识列
,[ID] int IDENTITY (1,1)
1.分页方案一:(利用Not In和SELECT ......