sql server的 string split 字符串

现在用的SQL Server 2008,没有类似C#或者JavaScript里面的split函数,而这个又是这么好用……


找了一番,找到一个办法

如C#调用sql server的存储过程,传参数为 “1,2,3,4,5,6,7”

数据库接收后再根据逗号截断,然后循环利用,这应该是很常见的需求。

别人的一段代码:

declare @s varchar(100),@sql varchar(1000)
set @s='1,2,3,4,5,6,7,8,9,10'
set @sql='select col='''+ replace(@s,',',''' union all select ''')+''''
PRINT @sql
exec (@sql)
select @sql

其中把 @sql 变量输出了,可以轻易看到内容如下(我整理了一下格式):

select  col='1'
union all select '2' 
union all select '3'
union all select '4'
union all select '5' 
union all select '6' 
union all select '7' 

可见结果如图:
在这里插入图片描述

原文地址:
https://blog.csdn.net/weixin_33962923/article/details/86347434

延伸阅读:
SQL Server 2016新增:string_split函数(拆分字符串)
https://blog.csdn.net/sqlserverdiscovery/article/details/79187307

发布了177 篇原创文章 · 获赞 47 · 访问量 43万+

猜你喜欢

转载自blog.csdn.net/festone000/article/details/93904424