SQL分割字符串并返回表
作者:C/S框架网  发布日期:2013-07-27 10:15:42
  SQL分割字符串并返回表

C# Code:

ALTER FUNCTION ufn_Split

(

    @C VARCHAR(8000), --字符串

    @SPLIT VARCHAR(2) --分隔符

)

RETURNS @T TABLE(isid INT IDENTITY(1,1),COL VARCHAR(20))  

AS  

BEGIN  

 

/***************************************************************

功能:SQL分割字符串并返回表

 

--测试案例:

SELECT * FROM ufn_Split('11,22,33,44,55',',')

SELECT * FROM ufn_Split(',22,',',')

SELECT * FROM ufn_Split('22',',')

SELECT * FROM ufn_Split(',',',')

SELECT * FROM ufn_Split('',',')

 

***************************************************************/

    IF ISNULL(@C,'')='' RETURN

   

    WHILE(CHARINDEX(@SPLIT,@C)<>0)  

    BEGIN  

       INSERT @T(COL) VALUES (SUBSTRING(@C,1,CHARINDEX(@SPLIT,@C)-1))  

       SET @C=STUFF(@C,1,CHARINDEX(@SPLIT,@C),'')

    END  

    INSERT @T(COL) VALUES (@C)  

    RETURN  

END  


//来源:C/S框架网(www.csframework.com) QQ:1980854898


 

上一篇 下一篇