一个分割字符串的函数

一个分割字符串的自定义函数,主要是了解思路,留着以后备用。

--========================================
--Desc:<字符串的分割>
--Blog:<奔跑的金鱼>
--Date:<2016-01-07>
--========================================
CREATE FUNCTION dbo.f_splitstr
(
   @str varchar(8000)
)
RETURNS @r TABLE(id int IDENTITY(1, 1), value varchar(5000))
AS
BEGIN
 /* 函数体 */
    DECLARE @pos int
    SET @pos = CHARINDEX(',', @str)
    WHILE @pos > 0
    BEGIN
        INSERT @r(value) VALUES(LEFT(@str, @pos - 1))
        SELECT 
            @str = STUFF(@str, 1, @pos, ''),
            @pos = CHARINDEX(',', @str)
    END
    IF @str > ''
        INSERT @r(value) VALUES(@str)
    RETURN

END
-----------调用函数
select * FROM [test].[dbo].[f_splitstr]('A,B,C')

 

posted @ 2016-01-07 15:19  OLIVER_QIN  阅读(408)  评论(0编辑  收藏  举报