首页  ·  知识 ·  数据库
SQL实现split函数,自定义分割字符,自定义取出第几个分割字符前的字符串
佚名  http://www.cnblogs.com/liqiang665/archive/2007/07/  MS-SQL  编辑:dezai  图片来源:网络
"COLOR: rgb(0,0,255)">CREATE "COLOR: rgb(0,0,0)"> "COLOR: rgb(0,0,255)">FUNCTION st
CREATE FUNCTION [dbo].[split]
 (
@str nvarchar(4000),@code varchar(10),@no int )  
RETURNS varchar(200)
AS  
BEGIN 

declare @intLen int
declare @count int
declare @indexb  int
declare @indexe  int
set @intLen=len(@code)
set @count=0
set @indexb=1


if @no=0
  
if charindex(@code,@str,@indexb)<>0
     
return left(@str,charindex(@code,@str,@indexb)-1
  
else
     
return @str

while charindex(@code,@str,@indexb)<>0
  
begin
       
set @count=@count+1
       
if @count=@no
         
break
       
set @indexb=@intLen+charindex(@code,@str,@indexb)
  
end 


if @count=@no
  
begin

      
set @indexe=@intLen+charindex(@code,@str,@indexb)
          
if charindex(@code,@str,@indexe)<>0
             
return substring(@str,charindex(@code,@str,@indexb)+len(@code),charindex(@code,@str,@indexe)-charindex(@code,@str,@indexb)-len(@code))
          
else 
             
return right(@str,len(@str)-charindex(@code,@str,@indexb)-len(@code)+1)

  
end

return ''

END
本文作者:佚名 来源:http://www.cnblogs.com/liqiang665/archive/2007/07/
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读