오라클 substr 로 문자열 자르기

오라클 substr

DB 컬럼상에서 문자열을 자를 수 있게 해주는 오라클 substr 기능에 대해 알아보겠습니다.

오라클 뿐만 아니라 다른 DBMS를 사용하면서 특정 문자열만 추출해 내고 싶을 때가 있습니다.

예를 들면 20150314 날짜가 있다면 문자열 함수를 이용하여 2015만 추출해 내어 년도만 표시해야 하는 경우가 있는데요.

오라클 substr

이런 기능을 제공하는 함수가 바로 substr 이라고 할 수 있습니다.

1. 사용법

SELECT SUBSTR('문자열',숫자1,숫자2) FROM 테이블명

위와 같인 substr 안에 매개변수는 문자열과 숫자가 들어갈 수 있는데 문자열에는 테이블에 필드명도 사용할 수 있습니다.

그리고 숫자 1개와 2개를 각각 사용할 수 있습니다.

1개: 해당 인덱스 부터 끝까지 문자열을 추출합니다.

예) ABCDE 문자가 있고 인덱스를 3으로 지정하면 CDE가 추출되어 집니다.

2개: 첫번째 숫자 인덱스 부터 두번째 숫자 인덱스까지의

예) ABCDE 의 문자에 숫자를 4.5 를 지정하면 DE가 추출되어 집니다.

※ 음수(-)를 사용하게 될 경우 문자열을 뒤에서 부터 추출할 수 있습니다.

2. 예제

  • 한개의 숫자만 사용하여 특정 부분 이후 추출
SELECT SUBSTR('가나다라마',3)
FROM DUAL;

oracle_substr002

2개의 숫자를 써서 일정 구간을 추출

SELECT SUBSTR('오라클테스트',2,3) AS TEST

FROM DUAL;

oracle_substr003

음수를 써서 끝에서 부터 추출

SELECT SUBSTR('ABCDEF', -3) AS TEST

FROM DUAL;

oracle_substr004

이렇게 오라클 substr 함수를 사용하여 문자열을 자를 수 있으니 응용해 보시기 바랍니다.


답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.