반응형
-- ============================================= -- Author: marsland@hanmail.net -- Create date: 2011-11-11 -- Description: 문자열 나누기 -- ============================================= ALTER FUNCTION [dbo].[fn_Split] ( @pSource VARCHAR(MAX), @pSeparator VARCHAR(1) ) RETURNS @TAB_RETURN TABLE ( ItemIndex INT, ItemValue VARCHAR(1000) ) AS BEGIN DECLARE @buffer VARCHAR(MAX); DECLARE @item VARCHAR(MAX); DECLARE @tmp INT; DECLARE @index INT; SET @index = 1; WHILE LEN(@pSource) > 0 BEGIN SET @tmp = CHARINDEX(@pSeparator, @pSource); IF @tmp > 0 BEGIN SET @item = SUBSTRING(@pSource, 1, @tmp - 1); SET @pSource = RIGHT(@pSource, LEN(@pSource) - @tmp); INSERT INTO @TAB_RETURN VALUES(@index, @item); SET @index = @index + 1; END ELSE BEGIN INSERT INTO @TAB_RETURN VALUES(@index, @pSource); BREAK; END; END; RETURN END
반응형
'DB > MS-SQL' 카테고리의 다른 글
[MS-SQL] 대소문자 구분하기 (0) | 2012.09.05 |
---|---|
[MS-SQL] 문자열에서 숫자만 뽑기 스칼라 함수 (0) | 2012.03.09 |
[MS-SQL] 문자열에서 숫자만 리턴하는 함수 (0) | 2011.11.11 |
MS-SQL 자동증가값(Identity) 초기화 (0) | 2011.07.12 |
Auto Commit 옵션 해제하기 (0) | 2011.05.12 |