SQL 문자열 자르기 - SUBSTR / SUBSTRING / LEFT / RIGHT

문자열을 자르는 함수에 대해 소개하겠습니다.

 

먼저 설명에 사용될 테이블입니다.

NO NAME MAIL
1 Aiden Aiden@google.com
2 Luke Luke@naver.com
3 John John@daum.net

 

1. Oracle 에서는 SUBSTR 함수를 사용합니다.

- SUBSTR( 문자열, 시작 위치, 길이 )  >> 문자열에서 시작 위치부터 길이만큼 출력합니다.

SELECT SUBSTR(MAIL, 1, 3) // MAIL의 1번째부터 3글자 출력 결과 : Aid
     , SUBSTR(MAIL, 1, 4) // MAIL의 1번째부터 4글자 출력 결과 : Aide
     , SUBSTR(MAIL, 2, 3) // MAIL의 2번째부터 3글자 출력 결과 : ide
  FROM TABLE
 WHERE NAME = 'Aiden'

 

 

 

2. MS-SQL 과 MySql에서는 SUBSTRING, LEFT, RIGHT 함수를 사용합니다.

- SUBSTRING( 문자열, 시작위치, 길이 ) >> 문자열에서 시작 위치부터 길이만큼 출력합니다.

- LEFT( 문자열, 길이 ) >> 문자열에서 왼쪽부터 길이만큼 출력합니다.

- RIGHT( 문자열, 길이 ) >> 문자열에서 오른쪽부터 길이만큼 출력합니다.

SELECT SUBSTRING(NAME, 2, 4) // NAME의 2번째글자부터 4글자 출력
     , SUBSTRING(NAME, 1, 4) // NAME의 1번째글자부터 4글자 출력
     , LEFT(MAIL, 7) // MAIL을 왼쪽부터 7글자 출력
     , RIGHT(MAIL, 5) // MAIL을 오른쪽부터 5글자 출력
  FROM TABLE

 

SUBSTRING(NAME, 2, 4) SUBSTRING(NAME, 1, 4) LEFT(MAIL, 7) RIGHT(MAIL, 5)
iden Aide Aiden@g e.com
uke Luke Luke@na r.com
ohn John John@da m.net

 

굉장히 쉽고 간단한 함수입니다.

실제로 엄청 자주사용되고 유용한 함수이니 꼭 잘 익혀두세요!