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 32 33 34 35 36 37 38 39 40 41 42 | /********************************************************************** 개 요 : 입력된 문자열 기준으로 자르기 작성자 명 : HJH 작성 일자 : 2016-11-03 수정자 명 : 수정 일자 : 수정 사유 : 수정 내용 : ************************************************************************/ --SELECT VALUE FROM FN_SPLIT('1;2;3;4;5',';') CREATE FUNCTION [dbo].[FN_SPLIT] ( @StrValue VARCHAR(MAX), -- 분리할 문자열 @SplitChar VARCHAR(1) -- 구분할 문자 ) RETURNS @SPLIT_TEMP TABLE ( VALUE VARCHAR(50) ) AS BEGIN DECLARE @oPos INT, @nPos INT DECLARE @TmpVar VARCHAR(MAX) -- 분리된 문자열 임시 저장변수 SET @oPos = 1 -- 구분문자 검색을 시작할 위치 SET @nPos = 1 -- 구분문자 위치 WHILE (@nPos > 0) BEGIN SET @nPos = CHARINDEX(@SplitChar, @StrValue, @oPos ) IF @nPos = 0 SET @TmpVar = RIGHT(@StrValue, LEN(@StrValue)-@oPos+1 ) ELSE SET @TmpVar = SUBSTRING(@StrValue, @oPos, @nPos-@oPos) IF LEN(@TmpVar)>0 INSERT INTO @SPLIT_TEMP VALUES( @TmpVar ) SET @oPos = @nPos +1 END RETURN END | cs |
'DB > MS-SQL' 카테고리의 다른 글
MSSQL FULL 백업 및 TRANSACTION LOG 백업 프로시저 (0) | 2021.02.23 |
---|---|
MSSQL 특정 프로시저 스크립트 생성 쿼리 (0) | 2019.09.27 |
MSSQL 쿼리 모음(21/02/23) (0) | 2018.12.22 |
MSSQL 메일 발송 (0) | 2018.12.22 |
MSSQL CSV 파일 가져오기 (0) | 2018.12.22 |