SQL基础:PIVOT unPIVOT 讲解SQL Server使用PIVOT与unPIVOT实现行列转换

分类:文章教程 日期: 点击:0

一、sql行转列:PIVOT

1、基本语法:

create table #table1
( id int ,code varchar(10) , name varchar(20) );
go

insert into #table1 ( id,code, name ) values ( 1, ‘m1′,’a’ ), ( 2, ‘m2’,null ), ( 3, ‘m3’, ‘c’ ), ( 4, ‘m2′,’d’ ), ( 5, ‘m1′,’c’ );
go

select * from #table1;

–方法一(推荐)
select PVT.code, PVT.a, PVT.b, PVT.c
from #table1 pivot(count(id) for name in(a, b, c)) as PVT;

–方法二
with P as (select * from #table1)
select PVT.code, PVT.a, PVT.b, PVT.c
from P pivot(count(id) for name in(a, b, c)) as PVT;
drop table #table1;

标签:

网站声明

1、本站所有软件和资料来源互联网,仅供个人学习和研究使用,不得用于任何商业用途。
2、如有侵犯您商标权、著作权或其他合法权利的,请联系我们,本站将在第一时间对此进行核实并处理。
3、本站所有可下载资源,都是按照“原样”提供,本站并未对其做过任何改动。本站不保证本站提供的下载资源的准确性、安全性和完整性。同时,本站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。
4、继续浏览本站,即代表您遵守此声明。