返回字符串的问题

沉默肥牛 2010-01-28 04:01:45
select category from atable
返回:
category
123
528
698
453
527
562

现在我想得到结果为:
123,528,698,453,527,562

也就是把这几个category用逗号连接起来,请问有什么方法。。。谢谢啦。。
...全文
60 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
黄_瓜 2010-01-28
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 fredrickhu 的回复:]
SQL code----------------------------------------------------
/*如何将一列中所有的值一行显示
数据源
a
b
c
d
e
结果
a,b,c,d,e*/createtable tb(colvarchar(20))insert tbvalues ('a')insert tbvalues ('b')insert tbval?-
[/Quote]
学习
--小F-- 2010-01-28
  • 打赏
  • 举报
回复
----------------------------------------------------
/*如何将一列中所有的值一行显示
数据源
a
b
c
d
e
结果
a,b,c,d,e
*/

create table tb(col varchar(20))
insert tb values ('a')
insert tb values ('b')
insert tb values ('c')
insert tb values ('d')
insert tb values ('e')
go

--方法一
declare @sql varchar(1000)
set @sql = ''
select @sql = @sql + t.col + ',' from (select col from tb) as t
set @sql='select result = ''' + left(@sql , len(@sql) - 1) + ''''
exec(@sql)
/*
result
----------
a,b,c,d,e,
*/

--方法二
declare @output varchar(8000)
select @output = coalesce(@output + ',' , '') + col from tb
print @output
/*
a,b,c,d,e
*/

drop table tb

-------------
沉默肥牛 2010-01-28
  • 打赏
  • 举报
回复
非常感谢。。楼上的都是正解。。。结贴。。
黄_瓜 2010-01-28
  • 打赏
  • 举报
回复
--> 测试数据:@tb
declare @tb table([category] int)
insert @tb
select 123 union all
select 528 union all
select 698 union all
select 453 union all
select 527 union all
select 562

declare @sql varchar(8000)
select @sql=isnull(@sql+',','')+ltrim(category) from @tb
select @sql as category
/*
category
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
123,528,698,453,527,562
*/
SQL77 2010-01-28
  • 打赏
  • 举报
回复
DECLARE @S VARCHAR(800)
select @S=ISNULL(@S+',','')+category from atable

category
123
528
698
453
527
562
黄_瓜 2010-01-28
  • 打赏
  • 举报
回复
declare @sql varchar(8000)
select @sql=isnull(@sql+',','')+category from atable
select @sql

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧