티스토리 뷰

반응형

----------------------------------------------# Array_Split 함수 만들기

CREATE FUNCTION [dbo].[Array_Split](

 @sText NVARCHAR(MAX), -- 대상 문자열

 @str CHAR(1),                   -- 구분기호

 @idx INT                            -- 배열 인덱스

)

RETURNS VARCHAR(100)

AS

BEGIN

DECLARE @word NVARCHAR(200),    -- 반환할 문자

@sTextData       NVARCHAR(MAX),

@num               SMALLINT;


SET @num = 1;

SET @str = LTRIM(RTRIM(@str));

SET @sTextData = LTRIM(RTRIM(@sText)) + @str;


WHILE @idx >= @num

BEGIN


IF CHARINDEX(@str, @sTextData) > 0

BEGIN

-- 문자열의 인덱스 위치의 요소를 반환

SET @word = SUBSTRING(@sTextData, 1, CHARINDEX(@str, @sTextData) - 1);

SET @word = LTRIM(RTRIM(@word));


-- 반환된 문자는 버린후 좌우공백 제거  

SET @sTextData = LTRIM(RTRIM(RIGHT(@sTextData, LEN(@sTextData) - (LEN(@word) + 1))))

END

ELSE

BEGIN

SET @word = NULL;

END

SET @num = @num + 1

END

RETURN(@word);

END


----------------------------------------------# Array_Split 함수 사용방법



반응형

'DBMS > SQL Server' 카테고리의 다른 글

[BAK] 파일 복원하기  (0) 2013.04.10
프로시저 이용시 오류메시지 내보내기  (0) 2013.02.25
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함