标题:SQL中怎么把某张表中的一个字段的数据转换成一行字符串显示。中间用#号分开 ...
只看楼主
yiding2599
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-8-15
结帖率:0
已结贴  问题点数:20 回复次数:4 
SQL中怎么把某张表中的一个字段的数据转换成一行字符串显示。中间用#号分开。
SQL中怎么把某张表的一个字段中的数据转换成一行字符串显示。中间用#号分开。

例如数据

name
1
2
3
4
5
最后的结果
1#2#3#4#5
搜索更多相关主题的帖子: 字符串 
2012-08-16 15:19
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
得分:20 
正统的办法:
使用游标,逐行读取数据,再对数据进行连接。

做自己喜欢的事!
2012-08-16 20:49
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
得分:0 
还有一种比较取巧的办法,等我验证一下,再贴出来。

做自己喜欢的事!
2012-08-16 20:57
yiding2599
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-8-15
得分:0 
回复 3楼 netlin
多谢飞侠啊。。。等你的验证结果
2012-08-17 14:15
mixvin
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-7-12
得分:0 
declare @bb    varchar(50)
declare @cc varchar(50)
set @cc=''
declare test SCROLL cursor for
select [name] from 表名
open test
while(@@fetch_status=0)
begin
fetch from test
into @bb

set @bb=@bb+'#'
set @cc=@cc+@bb
end

print substring(@cc,1,len(@cc)-1-len(@bb))
close test
deallocate test
2012-08-29 11:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-379602-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.333781 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved