첨부 소스 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

▶ 문자열에서 테이블 생성하기 예제

SELECT * FROM CreateTableFromString('고수/이나영/손예진/김사랑/박예진', '/');

 

728x90

 

▶ 문자열에서 테이블 생성하기

CREATE FUNCTION [dbo].[CreateTableFromString]
(
    @P_String    NVARCHAR(MAX) -- 문자열
   ,@P_Separator NVARCHAR(10)  -- 분리자
)
RETURNS @Result TABLE(Item NVARCHAR(100))
AS
BEGIN
    DECLARE @Item VARCHAR(MAX);

    WHILE CHARINDEX(@P_Separator, @P_String) <> 0 OR LEN(RTRIM(@P_String)) > 0
    BEGIN
        IF CHARINDEX(@P_Separator, @P_String) = 0
        BEGIN
            SET @Item = @P_String;

            SET @P_String = '';
        END
        ELSE
        BEGIN
            SELECT @Item = SUBSTRING(@P_String, 0, CHARINDEX(@P_Separator, @P_String));

            SET @P_String = SUBSTRING(@P_String, CHARINDEX(@P_Separator, @P_String) + 1, LEN(@P_String));
        END

        INSERT INTO @Result(Item) VALUES (@Item);
    END

    RETURN;
END
GO
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요