sql Split函数

CREATE Function [Split](@Sql varchar(8000),@Splits varchar(10))  
returns @temp Table (a varchar(100))  
As  
Begin  
Declare @i Int  
Set @Sql = RTrim(LTrim(@Sql))  
Set @i = CharIndex(@Splits,@Sql)  
While @i >= 1  
Begin  
Insert @temp Values(Left(@Sql,@i-1))  
Set @Sql = SubString(@Sql,@i+1,Len(@Sql)-@i)  
Set @i = CharIndex(@Splits,@Sql)  
End 
If @Sql <> ''  
Insert @temp Values (@Sql)  
Return  
End 
--测试
--SELECT * FROM  dbo.Split('L.I.U.D.O.N.G','.')
--再来个转回来的
select  [values]=stuff((select ','+a from dbo.Split('L.I.U.D.O.N.G','.') t  for xml path('')), 1, 1, '') 



 

你可能感兴趣的:(sql,function,测试,table,insert,Path)