zoukankan      html  css  js  c++  java
  • Sql中split方法实现

    ALTER FUNCTION [dbo].[split](@Long_str varchar(8000),@split_str varchar(100))    
    RETURNS  @tmp TABLE(        
        ID 
    int IDENTITY PRIMARY KEY,      
        short_str 
    varchar(8000)    
    )    
    AS   
    BEGIN   
        
    DECLARE @long_str_Tmp varchar(8000),
       
    @short_str varchar(8000),
       
    @split_str_length int   
     
        
    SET @split_str_length = LEN(@split_str)    
     
        
    IF CHARINDEX(@split_str,@Long_str)=1 
             
    SET @long_str_Tmp=SUBSTRING(@Long_str,
         
    @split_str_length+1,
         
    LEN(@Long_str)-@split_str_length)
     
        
    ELSE
             
    SET @long_str_Tmp=@Long_str
     
        
    IF CHARINDEX(REVERSE(@split_str),REVERSE(@long_str_Tmp))>1    
            
    SET @long_str_Tmp=@long_str_Tmp+@split_str    
        
    ELSE   
            
    SET @long_str_Tmp=@long_str_Tmp    
     
        
    WHILE CHARINDEX(@split_str,@long_str_Tmp)>0    
            
    BEGIN   
                
    SET @short_str=SUBSTRING(@long_str_Tmp,1,
         
    CHARINDEX(@split_str,@long_str_Tmp)-1)    
                
    DECLARE @long_str_Tmp_LEN INT,@split_str_Position_END int   
                
    SET @long_str_Tmp_LEN = LEN(@long_str_Tmp)    
                
    SET @split_str_Position_END = LEN(@short_str)+@split_str_length    
                
    SET @long_str_Tmp=REVERSE(SUBSTRING(REVERSE(@long_str_Tmp),1,
         
    @long_str_Tmp_LEN-@split_str_Position_END))
                
    IF @short_str<>'' INSERT INTO @tmp SELECT @short_str    
            
    END   
        
    RETURN     
    END 
  • 相关阅读:
    C#调用webservice
    C#调用java方法踩坑记
    GitHub
    oracle之在java中调用
    oracle之数据恢复(delete误删)
    word之高级
    word之个人设置
    word之常用功能
    word
    git之摘抄
  • 原文地址:https://www.cnblogs.com/weblogical/p/1969798.html
Copyright © 2011-2022 走看看