SQL——多行併成一行顯示, 以字串分隔(相當於C#中的join)

iteye_20954發表於2011-12-31
DECLARE @STR VARCHAR(MAX) SELECT @STR=ISNULL(@STR+',','')+b FROM (SELECT DISTINCT b FROM 表)AS T SELECT @STR


注意:@STR不能賦初值, 否則前面會多一個 ','

——————————————————————————————————————————


更強悍的招數:

if not object_id('tb') is null drop table tb Go Create table tb([A] int,[B] nvarchar(1)) Insert tb select 1,N'a' union all select 2,N'b' union all select 3,N'c' Go Select distinct stuff((select ','+[B] from tb for xml path('')),1,1,'') from tb t
一行程式碼搞定, 不得不歎服!!

相關文章