빅데이터/Oracle SQL | Do it! 오라클로 배우는 데이터베이스 입문

오라클 함수 | 문자 함수 (INSTRA / REPLACE / LPAD, RPAD, CONCAT / TRIM, LTRIM, RTRIM)

KimKelly 2023. 2. 13. 15:09
반응형

06.  오라클 함수

06-2 문자 함수

 

[문자열 데이터 안에서 특정 문자 위치를 찾는 INSTRA 함수]

INSTRA([문자열 데이터(필수)], 
       [위치를 찾으려는 부분 문자(필수)], 
       [위치 찾기를 시작할 대상 문자열 데이터 위치(선택, 생략 시 1)], 
       [시작 위치에서 찾으려는 문자가 몇 번째인지 지정(선택, 생략 시 1)])

 

 

- 특정 문자를 포함하고 있는 행을 찾을 때 사용 가능

 


[특정 문자를 다른 문자로 바꾸는 REPLACE 함수]

REPLACE([문자열 데이터 또는 열 이름(필수)],
        [대체 원하는 원래 문자(필수)],
        [대체 원하는 새로운 문자(선택)])

 

- 대체 원하는 새로운 문자를 입력하지 않을 경우, 대체 원하는 원래 문자가 삭제됨.

 


[데이터의 빈 공간을 특정 문자로 채우는 LPAD, RPAD 함수]

LPAD 또는 RPAD([문자열 데이터 또는 열 이름(필수)], 
               [결과 값으로 원하는 데이터의 자릿수(필수)], 
               [빈 공간에 채울 문자(선택)])

(결과 값으로 원하는 데이터의 자릿수 - 원래 데이터 자릿수) 만큼의 빈 자릿수를 LPAD는 왼쪽에서, RPAD는 오른쪽에서 원하는 문자로 채움. 

*채울 문자를 입력하지 않을 경우, 공백으로 채움.

 

 

- 데이터의 일부만 노출해야 하는 개인정보를 출력할 때, 아래와 같이 사용.

 

[두 문자열 데이터를 합치는 CONCAT 함수]

*N개의 데이터를 합칠 때, N-1개의 CONCAT 필요

*CONCAT 함수 대신 || 연산자를 사용할 수 있으며, 아래와 같이 사용함.

 


[특정 문자를 지우는 TRIM, LTRIM, RTRIM 함수]

 TRIM 또는 LTRIM 또는 RTRIM([원본 문자열 데이터(필수)], [삭제할 문자 집합(선택)])
LTRIM 원본 문자열의 왼쪽에서 지정한 문자가 삭제됨
RTRIM 원본 문자열의 오른쪽에서 지정한 문자가 삭제됨
TRIM 원본 문자열의 양쪽에서 지정한 문자가 삭제됨

*삭제할 문자열을 지정하지 않을 경우, 공백이 삭제됨

 

- 삭제할 문자를 지정하지 않을 때(공백 삭제)

*TRIM 함수는 검색 기준이 되는 데이터에 혹시나 포함되어 있을지도 모르는 양쪽 끝의 공백을 제거할 때 많이 사용.

예) 로그인을 위해 아이디를 입력할 때 실수로 공백이 함께 입력되는 경우

 

- 삭제할 문자를 지정할 때

*삭제할 문자 집합에 작성한 각각의 문자의 순서와 반복을 통해 만들 수 있는 모든 조합이 삭제됨.

예) 원본 문자열이 <_<_Oracle 이고 LTRIM으로 _< 를 삭제할 때, 결과는 Oracle이 됨. 그러나 <_O<_racle 문자열을  LTRIM으로 _<를 삭제하면, 결과는 O<_racle이 됨.

 

 

 

 

반응형