alter function f_splitStr2(@s varchar(8000),@split varchar(10)) returns @re table(col varchar(100)) as begin declare @t table(id int identity,b bit) insert into @t(b) select top 100 0 from dbo.syscolumns A,dbo.syscolumns B insert @re select substring(@s,id,charindex(@split,@s+@split,id)-id) from @t where charindex(@split,@split+@s,id)=id and id<=len(@s+'a') return end go