亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

sql里將重復(fù)行數(shù)據(jù)合并為一行數(shù)據(jù)使用逗號(hào)進(jìn)行分隔

 更新時(shí)間:2013年04月08日 10:44:48   作者:  
sql里將重復(fù)行數(shù)據(jù)合并為一行,將多行fieldname字段的內(nèi)容串聯(lián)起來(lái),用逗號(hào)分隔,接下來(lái)為大家介紹下詳細(xì)的實(shí)現(xiàn)sql語(yǔ)句,希望對(duì)你有所幫助
一.定義表變量
復(fù)制代碼 代碼如下:

DECLARE @T1 table
(
UserID int ,
UserName nvarchar(50),
CityName nvarchar(50)
);

復(fù)制代碼 代碼如下:

insert into @T1 (UserID,UserName,CityName) values (1,'a','上海')
insert into @T1 (UserID,UserName,CityName) values (2,'b','北京')
insert into @T1 (UserID,UserName,CityName) values (3,'c','上海')
insert into @T1 (UserID,UserName,CityName) values (4,'d','北京')
insert into @T1 (UserID,UserName,CityName) values (5,'e','上海')

復(fù)制代碼 代碼如下:

select * from @T1
-----最優(yōu)的方式
SELECT CityName,STUFF((SELECT ',' + UserName FROM @T1 subTitle WHERE CityName=A.CityName FOR XML PATH('')),1, 1, '') AS A
FROM @T1 A
GROUP BY CityName
----第二種方式
SELECT B.CityName,LEFT(UserList,LEN(UserList)-1)
FROM (
SELECT CityName,(SELECT UserName+',' FROM @T1 WHERE CityName=A.CityName FOR XML PATH('')) AS UserList
FROM @T1 A
GROUP BY CityName
) B
stuff(select ',' + fieldname from tablename for xml path('')),1,1,'')

這一整句的作用是將多行fieldname字段的內(nèi)容串聯(lián)起來(lái),用逗號(hào)分隔。
for xml path是SQL Server 2005以后版本支持的一種生成XML的方式。
stuff函數(shù)的作用是去掉字符串最前面的逗號(hào)分隔符。
效果圖:

相關(guān)文章

最新評(píng)論