gpt4 book ai didi

SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

一.定义表变量 。

复制代码 代码如下:

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

  。

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','上海') 。

select * from @T1 。

-----最优的方式 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字段的内容串联起来,用逗号分隔。 for xml path是SQL Server 2005以后版本支持的一种生成XML的方式。 stuff函数的作用是去掉字符串最前面的逗号分隔符.

  。

效果图:

SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔

最后此篇关于SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔的文章就讲到这里了,如果你想了解更多关于SQL Sever中使用SQL语句实现把重复行数据合并为一行并用逗号分隔的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com