易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server 行列转换示例

SQL Server的行列转换功能非常实用,但是由于其语法不好懂,使很多初学者都不愿意使用它。下面我就用示例的形式,逐一展现Pivot和UnPivot的魅力。如下图
 
1.从Wide Table of Months 转换到 Narrow Table的示例
select [Year],[Month],[Sales] from
(
select * from MonthsTable
)p
unpivot
(
[Sales] for [Year] in ([2001],[2002],[2003])
)t
order by [Year]
2.从Narrow Table 转换到 Wide Table of Years的示例
select * from
(
select * from NarrowTable
)p
pivot
(
Sum(Sales) for [Month] in ([Jan],[Feb],[Mar])
)t  
3.从Wide Table of Months 转换到 Wide Table of Years的示例
with d as
(
select [Year],[Month],[Sales] from
(
select * from MonthsTable
)p
unpivot
(
[Sales] for [Year] in ([2001],[2002],[2003])
)t
)
select * from
(
select * from d
)p
pivot
(
Sum(Sales) for [Month] in ([Jan],[Feb],[Mar])
)t  
4.从Wide Table of Years 转换到 Narrow Table的示例
select [Year],[Month],[Sales] from
(
select * from YearTable
)p
unpivot
(
Sales for [Month] in ([Jan],[Feb],[Mar])
)t  
5.从Narrow Table 转换到 Wide Table of Month的示例
select * from
(
select * from NarrowTable
)p
pivot
(
Sum(Sales) for [Year] in ([2001],[2002],[2003])
)t  
6.从Wide Table of Years 转换到 Wide Table of Month的示例
with d as
(
select [Year],[Month],[Sales] from
(
select * from YearTable
)p
unpivot
(
Sales for [Month] in ([Jan],[Feb],[Mar])
)t
)
select * from
(
select * from d
)p
pivot
(
Sum(Sales) for [Year] in ([2001],[2002],[2003])
)t
如需转载,请注明本文原创自CSDN TJVictor专栏:http://blog.csdn.net/tjvictor


相关文档:

PL/SQL例子2

create or replace procedure c
(
v_deptno  in emp.deptno%type,
v_max out emp.sal%type
)
as
begin
select max(sal+nvl(comm,0)) into v_max from emp where deptno=v_deptno;
end;
create or replace procedure cc
(
v_empno  in emp.empno%type,
v_sal out emp.sal%type,
v_comm out emp.comm% ......

SQL Server 事务日志收缩小结

  对于每一个数据库来讲,都需要至少一个事务日志文件。事务日志文件是整个数据库的血液,如果没有事务日志的话,那么将无法进行任何操作。 
事务日志有什么东西?
  事务日志记录着在相关数据库上的操作,同时还存储数据库恢复(recovery)的相关信息。
 
  事务日志与数据库恢 ......

SQL语句大全(3)

--语 句              功 能
--数据操作
SELECT   --从数据库表中检索数据行和列
INSERT   --向数据库表添加新数据行
DELETE   --从数据库表中删除数据行
UPDATE   --更新数据库表中的数据
--数据定义
CREATE TABLE  --创建一个数据库表
DROP TABLE   --从数据库中删除表
ALTER ......

SQL函数库

1.字符串函数 :
datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格
length(expression,variable)指定字符串或变量名称的长度。
substring(expression,start,length) 不多说了,取子串
right(char_expr,int_expr) 返回字符串右边int_expr个字符
concat(str1,str2,...)返回来自于参数连结的字符串。dat ......

SQL Server 2005中的文件和文件组(二)

--> Title  : SQL Server 2005中的文件和文件组(二)
--> Author : wufeng4552
--> Date   : 2010-1-13
SQL Server 2005中的文件和文件组(ㄧ) 主要講解了理論部分
http://blog.csdn.net/wufeng4552/archive/2009/10/23/4716053.aspx
SQL Server 2005中的文件和文件组(二) 主要 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号