Sql Server定义一个字符串分割函数,类似于C#里的split函数
下面的代码使用了临时表作
create function f_split(@c varchar(2000),@split varchar(2)) returns @t table(col varchar(20)) as begin while(charindex(@split,@c)<>0) begin insert @t(col) values (substring(@c,1,charindex(@split,@c)-1)) set @c = stuff(@c,1,charindex(@split,@c),'') end insert @t(col) values (@c) return end go
调用函数
select * from dbo.f_split('dfkd,dfdkdf,dfdkf,dffjk',',')
结果如下
col -------------------- dfkd dfdkdf dfdkf dffjk