好贷网好贷款

【难度】!如何在聚合时,将一列的多行的内容组合起来 40hb1122]

发布时间:2016-12-5 18:38:32 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"【难度】!如何在聚合时,将一列的多行的内容组合起来 40hb1122]",主要涉及到【难度】!如何在聚合时,将一列的多行的内容组合起来 40hb1122]方面的内容,对于【难度】!如何在聚合时,将一列的多行的内容组合起来 40hb1122]感兴趣的同学可以参考一下。

本帖最后由 hb1122 于 2011-06-17 19:08:51 编辑 RT! ID Info --------------------- 1,'aa' 1,'bb' 1,'cc' 结果 ID info --------------- 1,'aa bb cc ' 请不吝赐教

--sql2005 select id, Info=stuff((select ','+ltrim(Info) from tb a where a.id=tb.id for xml path('')),1,1,'') from tb  group by id --sql2000使用自定义函数

--sql 2000 CREATE FUNCTION dbo.f_str(@id int) RETURNS varchar(8000) AS BEGIN   DECLARE @r varchar(8000)   SET @r = ''   SELECT @r = @r + ',' + Info FROM tb WHERE [email protected]   RETURN STUFF(@r, 1, 1, '') END GO -- 调用函数 SELECt id, Info = dbo.f_str(id) FROM tb GROUP BY id

--sql2005 select id, Info=stuff((select ' '+ltrim(Info) from tb a where a.id=tb.id for xml path('')),1,1,'') from tb   group by id

汗! 能用一条查询语句直接做么?

上面2005可以的

可惜是2000

那只有使用自定义函数了

该回复于2011-06-18 08:28:15被版主删除

如果是这样,那我就在程序里组合一下得了

引用 2 楼 cd731107 的回复:SQL code --sql 2000 CREATE FUNCTION dbo.f_str(@id int) RETURNS varchar(8000) AS BEGIN   DECLARE @r varchar(8000)   SET @r = ''   SELECT @r = @r + ',' + Info FROM tb WHERE [email protected]   RETURN STUFF(@r, 1……为啥SELECT @r = @r + ',' + Info FROM tb WHERE [email protected]@id的info列聚合呢?没太想明白

上一篇:SQL存储过程,(高手进) 100zhangzhen116]
下一篇:SQL存储过程显示树形菜单 60zhangzhen_927116]

相关文章

相关评论