CREATE FUNCTION [dbo].[F_SB_Split]
(
@StrValue VARCHAR(1000), -- 대상 문자열
@SplitChar CHAR(1) -- 구분자
)
RETURNS @SPLIT_TEMP TABLE ( RtnValue VARCHAR(50) )
AS
BEGIN
DECLARE @sPos INT, @nPos INT
DECLARE @TmpVar VARCHAR(1000) -- 분리된 문자열 임시 저장변수
SET @sPos = 1 -- 구분문자 검색을 시작할 위치
SET @nPos = 1 -- 구분문자 위치
WHILE (@nPos > 0)
BEGIN
SET @nPos = CHARINDEX(@SplitChar, @StrValue, @sPos )
IF @nPos = 0
SET @TmpVar = RIGHT(@StrValue, LEN(@StrValue)-@sPos+1 )
ELSE
SET @TmpVar = SUBSTRING(@StrValue, @sPos, @nPos-@sPos)
IF LEN(@TmpVar)>0
INSERT INTO @SPLIT_TEMP VALUES( @TmpVar )
SET @sPos = @nPos + 1
END
RETURN
END
TRY ~ CATCH (0) | 2011.05.26 |
---|---|
SQL-Server sp 에서 xml 처리 (0) | 2011.03.24 |
SQLServer : Convert/Cast 의 새로운 발견 (0) | 2010.11.26 |
SQL Server 2008 T-SQL (0) | 2010.11.18 |
3자리 마다 콤마(,) 찍기 (0) | 2010.10.22 |