DB관련/SQL Server

[MSSQL] 문자열 자르기 - 구분자로 자르기, 길이로 자르기

saltdoll 2017. 6. 30. 00:49
반응형

MSSQL  문자 자르기

문자를 자르는 부분은 정말 많이 쓰이는 것 중에 하나인데, 

WHERE절에서 사용시 속도를 항상 염두해 가면서 사용해야 하는 것도 중요하죠.


mssql substring function



구분자로 자르기

문자열: 'ABC\DE\FGH'


-- '\' 기준으로 앞에서 자르기

SELECT LEFT('ABC\DE\FGH', CHARINDEX('\', 'ABC\DE\FGH')-1);

결과: ABC



-- '\' 기준으로 중간에서 자르기

SELECT SUBSTRING('ABC\DE\FGH', CHARINDEX('\', 'ABC\DE\FGH')+1, LEN('ABC\DE\FGH')-CHARINDEX('\', 'ABC\DE\FGH')-CHARINDEX('\', REVERSE('ABC\DE\FGH')));

결과: DE



-- '\' 기준으로 뒤에서 자르기

SELECT RIGHT('ABC\DE\FGH',CHARINDEX('\', REVERSE('ABC\DE\FGH'))-1);

결과: FGH








mssql left function


길이로 자르기

문자열: 'ABCDEFGH'


-- 앞에서 자르기

SELECT LEFT('ABCDEFGH', 3);

결과: ABC


-- 중간에서 자르기

SELECT SUBSTRING('ABCDEFGH', 4, 2);

결과: DE


-- 뒤에서 자르기

SELECT RIGHT('ABCDEFGH', 3);

결과: FGH





출처: http://developerking.tistory.com/1 [나는 개발자다]



반응형
도움이 되셨다면 하트모양의 "♡ 공감"을 눌러주시면 큰 격려가 됩니다.
(로그인하지 않으셔도 가능)