亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

SQL Server使用PIVOT與unPIVOT實現行列轉換

瀏覽:117日期:2023-03-06 14:25:24

一、sql行轉列:PIVOT

1、基本語法:

create table #table1    (    id int ,code varchar(10) , name varchar(20) );goinsert into #table1 ( id,code, name ) values ( 1, "m1","a" ), ( 2,  "m2",null ), ( 3, "m3", "c" ), ( 4,  "m2","d" ), ( 5,  "m1","c" );goselect * 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 Ppivot(count(id) for name in(a, b, c)) as PVT;drop table #table1;

結果:

2、實例:

3、傳統方式:(先匯總拼接出所需列的字符串,再動態執行轉列)

先查詢出要轉為列的行數據,再拼接字符串。

create table #table1    (    id int ,code varchar(10) , name varchar(20) );goinsert into #table1 ( id,code, name ) values ( 1, "m1","a" ), ( 2,  "m2",null ), ( 3, "m3", "c" ), ( 4,  "m2","d" ), ( 5,  "m1","c" );goselect * from #table1;declare @strCN nvarchar(100);select @strCN = isnull(@strCN + ",", "") + quotename(name) from #table1 group by name ;print  @strCN  --‘[a],[c],[d]"declare @SqlStr nvarchar(1000);set @SqlStr = N"select * from #table1 pivot ( count(ID) for name in (" + @strCN + N") ) as PVT";exec ( @SqlStr );drop table #table1;

結果:

二、sql列轉行:unPIVOT:

基本語法:

create table #table1 (id int,code varchar(10),name1 varchar(20),name2 varchar(20),name3 varchar(20));goinsert into #table1(id, name1, name2, code, name3)values(1, "m1", "a1", "a2", "a3"),    (2, "m2", "b1", "b2", "b3"),    (4, "m1", "c1", "c2", "c3");goselect * from #table1;--方法一select PVT.id, PVT.code, PVT.name, PVT.val     from #table1 unpivot(val for name in(name1, name2, name3)) as PVT;--方法二with P as (select * from #table1)select PVT.id, PVT.code, PVT.name, PVT.val     from P       unpivot(val for name in(name1, name2, name3)) as PVT;drop table #table1;

結果:

實例:

到此這篇關于SQL Server使用PIVOT與unPIVOT實現行列轉換的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持。

標簽: MsSQL
相關文章:
主站蜘蛛池模板: 91最新入口 | 国产国产成人久久精品杨幂 | 青青操在线免费观看 | 高清成年美女xx免费网站黄 | a天堂专区一区二区三区 | 国产在线一区二区三区 | 91精品国产91久久久久久最新 | 国产精选91热在线观看 | 中文字幕在线播 | 999www成人免费视频 | 色综合久久加勒比高清88 | 亚洲国产精久久小蝌蚪 | 国产a级午夜毛片 | 国产精品亚洲综合一区 | 成人国产精品免费软件 | 亚洲欧美日韩国产综合专区 | 中国a毛片| 国产蜜臀 | 亚洲美女爱做色禁图无遮 | 欧美一级看片免费观看视频在线 | 丝袜在线观看 | 亚洲jjzzjjzz在线播放 | 久久99国产精品久久欧美 | 99re最新地址获取精品 | 国产亚洲欧美在线视频 | 亚洲精品美女在线观看播放 | 久久91精品国产91久久麻豆 | 午夜伦情电午夜伦情影院 | 玖草资源在线 | 精品视频一二三区 | 国内外成人免费在线视频 | 青青免费视频在线 | 久久精品视频7 | 久久精品国产74国产 | 影音先锋5566手机在线播放 | 在线观看www日本免费网站 | 日本老太婆一级毛片免费 | 97国产在线观看 | 国产高清色播视频免费看 | 中国帅小伙肌肉gaysextube | 一级a做爰片欧欧美毛片4 |