My Name is Kay....

DIY , 먹방 , 개발 , 육아 , 여행 좋아합니다.
AdBlock 사용시 화면이 정상적으로 노출되지 않습니다.
포스팅 관련 문의 및 개발 문의는 Email : wkzkfmxksi@gmail.com

추가 포스팅이 이뤄지지 않는 블로그입니다. 문의는 wkzkfmxksi@gmail.com 으로 연락주세요.
kay
조회 수 8620 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

MS-SQL 버전 : split 함수


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



원문 Url : http://huhlog.tistory.com/7

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
8 MASS SQL Injection 일괄 삭제하기 kay 2013.03.31 3648
7 테이블 정의서 생성 file kay 2013.03.15 17631
6 데이터 대소문자 구분하기 - case-insensitive(CI) , accent-insensitive(AS) kay 2013.03.08 4070
5 디비 로그 축소 kay 2013.03.08 4148
4 데이터 베이스 소유자 아이디 매칭 kay 2013.03.08 2898
3 캐시 초기화 kay 2013.03.08 3065
2 LDF 최대용량 및 로그 삭제가 안될 때 kay 2013.03.08 3193
1 프로시져 & 함수 백업 및 정보 확인 ( 생성일 , 수정일 등..) kay 2013.03.08 5020
Board Pagination Prev 1 2 3 Next
/ 3