臨時表#t原始資料:
實現如下格式,即根據province分組,把每個組對應的city列以某種格式展示:
實現方法:
select t.province,(
select city+',' from #t where t.province=province for xml path('')
) as 城市群 from #t t
group by t.province
注:如果要去掉每組城市群後面的逗號,有幾種方法可以參考:
--方法一:通過left去掉列最後乙個字元
select province,left(citys,len(citys)-1) citys from(
select province,
(select city+',' from #t where province=t.province for xml path('')
) citys from #t t
group by province
)b--方法二:通過sutff去掉列第乙個字元
select province,stuff(citys,1,1,'') citys from(
select province,
(select ';'+city from #t where province=t.province for xml path('')
) citys from #t t
group by province
)b--方法三:通過stuff去掉列最後乙個字元
select province,stuff(citys,len(citys),1,'') citys from(
select province,
(select city+';' from #t where province=t.province for xml path('')
) citys from #t t
group by province
)b再廢話一下:
select stuff('abcdef',2,3,'ghijk') 結果:aghijkef
stuff的功能:刪除指定長度的字串並在指定的起始點插入另一組字元
stuff(character_expression ,start ,length ,character_expression)
character_expression :操作的字元,start:刪除和插入的起始點,length:刪除的長度,character_expression :要插入的字元
11 Power Query 透視列的解析
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!透視列 行轉列實現一維轉二維 何為一維表 即看每一行資料我只需要讀取一行資料就可以了 何為二維表 即看每一行資料我需要關注行列方向的資料。比如下圖的乙個一維表,我們如何將它轉換成為二維表呢?之前講到的分組依據是無法實現的。下面我們直接進入pq介面操...
vba 按照某列結果做透視
sub 從首列提取周次到第二列並透視 for i 1 to activesheet.range a1 currentregion.rows.count c activesheet.cells i,1 value activesheet.cells i,2 value mid c,5,2 next a...
動態生成列
create procedure sp createtable tname varchar 100 colscript varchar 1000 colnum int coltype varchar 100 as begin declare s varchar 8000 i int set s cr...