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 
  • 相关阅读:
    Java Lambda 表达式 对 Map 对象排序
    比较两个list对象是否相同
    ubuntu redis 自启动配置文件(关机有密码)
    spring中订阅redis键值过期消息通知
    网站架构之性能优化(转)
    Json转Java Bean
    spring mvc 4 校验
    java @ResponseBody返回值中去掉NULL字段
    合并两个java bean对象非空属性(泛型)
    spring mvc 删除返回字符串中值为null的字段
  • 原文地址:https://www.cnblogs.com/weblogical/p/1969798.html
Copyright © 2011-2022 走看看