zoukankan      html  css  js  c++  java
  • MS SQL Server字符拆分函数

    Insus.NET以前有用XQuery的nodes()方法写过一个函数,是MS SQL字符拆分的函数,http://www.cnblogs.com/insus/archive/2012/02/26/2368283.html

    今天学习SQL,再尝试另写一个:

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author:        Insus.NET
    -- Create date: 2013-06-30
    -- Description:    split string function.
    -- =============================================
    CREATE FUNCTION [dbo].[udf_Split](@value NVARCHAR(MAX), @delimiter CHAR(1))
    RETURNS @Results TABLE ([ID] INT IDENTITY(1,1),[WORD] NVARCHAR(MAX))
    AS
    BEGIN
        DECLARE @index INT
        DECLARE @slice NVARCHAR(MAX)
     
        SET @index = 1
        IF @value IS NULL 
            RETURN
     
        WHILE @index <> 0
        BEGIN
            SET @index = CHARINDEX(@delimiter, @value)
            IF @index !=0
                SET @slice = LEFT(@value,@index - 1)
            ELSE
                SET @slice = @value
     
            INSERT INTO @Results([WORD]) VALUES(@slice)
            SET @value = RIGHT(@value,LEN(@value) - @index)
     
            IF LEN(@value) = 0 BREAK
        END 
        RETURN
    END
     
    GO
    udf_Split

    例子演示:



  • 相关阅读:
    Linq&Lumbda
    PS颜色模式
    WPF绑定方式
    明三杰刘健
    齐有鲍叔,郑有子皮
    朱厚照
    管子&小白
    时间
    人外有人之神箭手养繇基篇
    楚共王
  • 原文地址:https://www.cnblogs.com/insus/p/3163564.html
Copyright © 2011-2022 走看看