SQL 中进行字符串处理

mycolin 2005-05-18 04:23:27
比如我在存储过程中使用select ID from TableA 取值,得到下面结果:
ID
---------
1
2
3
4
5
...
10

-------------------------------------------
alter procedure prGetList
@chnList nvarchar(2000) output
as
select @chnList = tText from A --tText from A
go

-----------------------------------------
假如存储过程如上,我是否可以把返回结果变成一个字符串,中间加上一些分割符号;如:
s = ‘1, 2,3,4,...,10’
,然后通过chnList返回来
...全文
74 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mycolin 2005-05-18
  • 打赏
  • 举报
回复
看来还是csdn上的牛人多啊!! 有星星的就是不一样,
我在大富翁上问了一天都没有人知道

-------------------------------------
另外怎么结帖啊?????
paoluo 2005-05-18
  • 打赏
  • 举报
回复
学习,你可以自己写啊,那样可以多练习写语句啊,但是你现在只是复制、粘贴,学不到东西啊。
tdtjjiao 2005-05-18
  • 打赏
  • 举报
回复
向你学习啊。
来的没你快啊。
paoluo 2005-05-18
  • 打赏
  • 举报
回复
楼上的,你又开始复制、粘贴了??
tdtjjiao 2005-05-18
  • 打赏
  • 举报
回复
Create procedure prGetList
@chnList nvarchar(2000) output
as
Set @chnList=''
select @chnList = @chnList+Rtrim(ID)+',' from A
Select @chnList=Left(@chnList,Len(@chnList)-1)
paoluo 2005-05-18
  • 打赏
  • 举报
回复
--建立测试环境
Create table A(ID Int)
--插入数据
Insert A Select 1
Union Select 2
Union Select 3
Union Select 4
Union Select 5
Union Select 6
Union Select 7
Union Select 8
Union Select 9
Union Select 10
GO
--建立存储过程
Create procedure prGetList
@chnList nvarchar(2000) output
as
Set @chnList=''
select @chnList = @chnList+Rtrim(ID)+',' from A
Select @chnList=Left(@chnList,Len(@chnList)-1)
go
--测试
Declare @chnList nvarchar(2000)
EXEC prGetList @chnList output
Select @chnList
GO
--删除测试环境
Drop table A
Drop procedure prGetList
GO
--结果
/*
1,2,3,4,5,6,7,8,9,10
*/
paoluo 2005-05-18
  • 打赏
  • 举报
回复
Create procedure prGetList
@chnList nvarchar(2000) output
as
Set @chnList=''
select @chnList = @chnList+Rtrim(ID)+',' from A
Select @chnList=Left(@chnList,Len(@chnList)-1)
go

34,590

社区成员

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

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