첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

■ 구분자를 사용해 문자열 분리하기

------------------------------------------------------------------------------------------------------------------------

CREATE FUNCTION [dbo].[GetTable]

(

    @String    NVARCHAR(MAX),

    @Separator NVARCHAR(10)

)

RETURNS @Result TABLE(Item NVARCHAR(100))

AS

BEGIN

    DECLARE @Temp   NVARCHAR(MAX)

    DECLARE @Start  INT

    DECLARE @End    INT

    DECLARE @Length INT

 

    SET @Temp  = ' ' + @String

    SET @Start = 1

    SET @End   = 0

 

    WHILE(@Start <> 0)

    BEGIN

        SET @End = CHARINDEX(@Separator, @Temp, @Start)

 

        IF @End <> 0

        BEGIN

            SET @Length = @End - @Start

        END

        ELSE

        BEGIN

            SET @Length = LEN(@Temp) - @Start + 1

        END

 

        INSERT INTO @Result(Item) VALUES (RTRIM(LTRIM(SUBSTRING(@Temp, @Start, @Length))))

 

        SET @Start = @End + 1

 

        IF @End = 0

        BEGIN

            RETURN

        END

    END

 

    RETURN

END

------------------------------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker

댓글을 달아 주세요