函数 dbo.split
create function dbo.split
(
@c varchar(1000),
@split varchar(2)
)
returns @t table(name varchar(100))
as
begin
while(charindex(@split,@c)<>0)
begin
insert @t(name)values(substring(@c,1,charindex(@split,@c)-1))
set @c=stuff(@c,1,charindex(@split,@c),' ')
end
insert @t (name) values(@c)
return
end
函数详解
创建SQL函数传入要拆分的字符串和拆分符号,判断第一个拆分符号位置,提取这一段字符插入临时表,把这一段字符清空,
循环对剩下的字符串进行处理
insert into test(name) select name from dbo.split('fsdg,df,dfg,dfgdf,dfg,dfg',',')
语句详解
从函数返回的表中提取列插入到指定表的列中