-
[MS-SQL] Split 함수 만들기!!취미생활/MS-SQL 2019. 6. 12. 08:23반응형
안녕하세요
코딩하는 남자의 코딩연습생입니다
MSSQL에서 Split 제공 함수가 없습니다
그래서 사용자 Function으로 만들어 두시면 프로시져 내부에서 사용하시가 편합니다
CREATE FUNCTION arr_split( @sText VARCHAR(500), -- 대상 문자열 @str CHAR(1) = '|', -- 구분기호(Default '|') @idx INT -- 배열 인덱스 )
RETURNS VARCHAR(20) AS BEGIN DECLARE @word CHAR(20), -- 반환할 문자 @sTextData VARCHAR(600), @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
반응형'취미생활 > MS-SQL' 카테고리의 다른 글
[MSSQL] ROW_NUMBER함수를 사용한 GROUP BY (0) 2019.12.13 [MS-SQL] VARCHAR과 NVARCHAR의 차이?? (0) 2019.12.05 [MS-SQL] 링크 서버 연결하기!! (0) 2019.06.12 [MS-SQL] ALTER TABLE문 사용 방법 (0) 2019.06.12 [MS-SQL] NOT EXISTS 사용 방법 (0) 2019.06.12