轉自:http://www.maomao365.com/?p=10739
摘要:
下文講述在sqlserver 對逗號分隔的字符串轉換爲數據表的另類方法實現,以下所示:
實驗環境:sql server 2008 R2
實現思路:
將組合字符串中的逗號替換爲「 'as n union all select ' 」,而後將替換後的字符串加上select 和 先後加上單引號 是其成爲可執行sql腳本,
最後運行替換後的字符串,就能夠獲得一張數據表,以下所示: sql
declare @maomao365 varchar(1000) set @maomao365 ='sqlserver,blog,other'; ---將逗號替換爲 'as n union all select ' set @maomao365 = REPLACE(@maomao365,',', ''' as n union all select ''' ); ---在字符串前面加上select 和單引號 ,後面也加上單引號 set @maomao365 =' select '''+ @maomao365 + ''''; print @maomao365 exec (@maomao365)