你的位置:首页 > 数据库

[数据库]在数据库中使用表值函数分割字符串


新建表值函数:

Create function [dbo].[f_split](@SourceSql varchar(8000),@StrSeprate varchar(10))returns @temp table(a varchar(100))as begin  declare @i int  set @SourceSql=rtrim(ltrim(@SourceSql))  set @i=charindex(@StrSeprate,@SourceSql)  while @i>=1  begin    insert @temp values(left(@SourceSql,@i-1))    set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)    set @i=charindex(@StrSeprate,@SourceSql)  end  if @SourceSql<>'\'    insert @temp values(@SourceSql)  return end

示例:

select * from f_split('1,2,3',',')

结果: