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 
  • 相关阅读:
    后台查询出来的list结果 在后台查询字典表切换 某些字段的内容
    easyui字典js 切换 jsp页面显示的内容
    easyui获取table列表中所有数据组装成json格式发送到后台
    java日常工作错误总结
    easyui模板页面 不良调查
    配置简单的拦截器java中
    读取pdf中的内容
    springMVC生成pdf文件
    C++之友元函数和友元类
    ROS初级教程 cmake cmakelist.txt 的编写教程
  • 原文地址:https://www.cnblogs.com/weblogical/p/1969798.html
Copyright © 2011-2022 走看看