mssql,charindex,substring,split,分割,函数  create   function   fsplit(@str   varchar(8000))  
mssql,charindex,substring,split,分割,函数  
returns   @tb   table(ch   varchar(8000))  
mssql,charindex,substring,split,分割,函数  
as  
mssql,charindex,substring,split,分割,函数  
begin  
mssql,charindex,substring,split,分割,函数  
declare   @i   int  
mssql,charindex,substring,split,分割,函数  
set   @str=@str+','  
mssql,charindex,substring,split,分割,函数  
set   @i=charindex(',',@str)  
mssql,charindex,substring,split,分割,函数  
while   @i>0  
mssql,charindex,substring,split,分割,函数  
begin  
mssql,charindex,substring,split,分割,函数  
insert   into   @tb   values(left(@str,@i-1))  
mssql,charindex,substring,split,分割,函数  
set   @str=substring(@str,@i+1,8000)  
mssql,charindex,substring,split,分割,函数  
set   @i=charindex(',',@str)  
mssql,charindex,substring,split,分割,函数  
end  
mssql,charindex,substring,split,分割,函数  
return  
mssql,charindex,substring,split,分割,函数  
end  
mssql,charindex,substring,split,分割,函数  
go  
mssql,charindex,substring,split,分割,函数   
mssql,charindex,substring,split,分割,函数  
--调用此函数进行分拆  
mssql,charindex,substring,split,分割,函数
  select   *   from   dbo.fsplit('sdafj,sadf;j;aslfi3a,a,a,b')  
mssql,charindex,substring,split,分割,函数   
go
mssql,charindex,substring,split,分割,函数
mssql,charindex,substring,split,分割,函数  
--删除函数  
mssql,charindex,substring,split,分割,函数
  drop   function   fsplit

邹建老大写的sql中可以使用的split函数,很强大,收藏了


相关文章: