SQL轉換列為以逗號分隔的字串

2021-09-08 02:47:18 字數 681 閱讀 5119

使用for xml path來將表中某一列的資料轉換為用逗號分隔的字串,例子如下: create table #rowconcat ( rowno int primary key, rowcode varchar(30) )

insert into #rowconcat values (1,'one') insert into #rowconcat values (2,'two') insert into #rowconcat values (3,'three') insert into #rowconcat values (4,'four') insert into #rowconcat values (5,'five')

select stuff((select ','+rowcode  from #rowconcat for xml path('')),1,1,'');  最後返回的字串就是這樣:one,two,three,four,five

上面使用到了stuff函式,我以前沒用過,在msdn上查了下用法,原來是 刪除指定長度的字元,並在指定的起點處插入另一組字元。**中最後一句就是要刪掉原字串中的第1個字元,在某種意義上類似於替換。

(以乙個井號 (#) 開頭的那些表名。只有在建立本地臨時表的連線上才能看到這些表,鏈結斷開時臨時錶即被刪除 (本地臨時表為建立它的該鏈結的會話所獨享)或者這樣說區域性臨時表是有當前使用者建立的,並且只有當前使用者的會話才可以訪問。)

mysql 當字段以逗號分隔時的轉換

當乙個欄位裡的資料是以逗號分隔時,利用group concat str 函式以及substring index 函式,將其資料直接轉換成以逗號相隔的字串 記錄sql如下 select s.id,group concat d.dict name dict name from sys data dict...

oracle如何拆分以逗號分隔的字串為多行

最近遇到乙個問題,需要把乙個帶有,的字串拆分成多行。通過查詢資料,這個操作需要使用以下2個關鍵知識 1.regexp substr函式 這個函式的作用是正則分隔字串,用法為 function regexp substr string,pattern,position,occurrence,modif...

oracle如何拆分以逗號分隔的字串為多列

最近遇到乙個問題,需要把乙個帶有,的字串拆分成多列。通過查詢資料,這個操作需要使用以下2個關鍵知識 1.regexp substr函式 這個函式的作用是正則分隔字串,用法為 function regexp substr string,pattern,position,occurrence,modif...