728x90
개발 내용
1.cte 를 활용한 문자열분리(while 반복없이)
1.cte 를 활용한 문자열분리(while 반복없이)
2.아스키, 유니코드, 바이트기준 한글판단
활용 쿼리 |
;WITH EACH(N, STR,CODE,UNICODE) AS ( SELECT 1, SUBSTRING(@STR, 1, 1),ASCII(SUBSTRING(@STR, 1, 1)),CONVERT(BINARY(2),UNICODE(CONVERT(NVARCHAR(2),SUBSTRING(@STR, 1, 1))))--,CONVERT(BINARY(2),SUBSTRING(@STR, 1, 1))--UNICODE(SUBSTRING(@STR, 1, 1)) UNION ALL SELECT N + 1, SUBSTRING(@STR, N+1, 1), ASCII(SUBSTRING(@STR, N+1, 1)),CONVERT(BINARY(2),UNICODE(CONVERT(NVARCHAR(2),SUBSTRING(@STR, N+1, 1))))--,CONVERT(BINARY(2),SUBSTRING(@STR, N+1, 1))--UNICODE(SUBSTRING(@STR, N+1, 1)) FROM EACH A WHERE N < LEN(@STR) ) select * from EACH |
성능 아주 좋아요~
필요한 code 입맛에 맞게 가져다 쓰면 좋겠네요 ( 뒷 주석 해제 시는 CTE의 컬럼 정보를 잘 맞춰 주세요 )
'프로그래밍 > TSQL' 카테고리의 다른 글
[TSQL] 현재 DB 내 수행 중인 쿼리 정보 확인 (0) | 2019.10.22 |
---|---|
[MSSQL][TSQL] CTE(Common Table Expression) 란? (계층쿼리, 재귀) (0) | 2019.10.21 |
[TSQL] CTR? (0) | 2019.10.21 |
[TSQL] DB 내 스크립트 검색 (0) | 2019.10.21 |
[TSQL] 테이블 존재 유무 확인하기 (0) | 2019.10.21 |
댓글