본문 바로가기

📚Study Note/ORACLE

[ ORACLE ] LPAD() RPAD() LTRIM() RTRIM() TRANSLATE() REPLACE()

 LTRIM('ORAORAORACLEORACLE','ORA') → CLEORACLE

-- ● LPAD() -- ★ 두 번째 파라미터 값부터 보기
--> Byte 공간을 확보하여 왼쪽부터 문자로 채우는 기능을 가진 함수
SELECT 'ORACLE' "1"
    ,  LPAD('ORACLE', 10, '*') "2"
FROM DUAL;
--==>> ORACLE	****ORACLE

ⓐ 10 Byte 공간을 확보한다.

ⓑ 확보한 공간에 'ORACLE' 문자열을 담는다.

ⓒ 나머지 빈 공간에 * 채운다. 


-- ● RPAD()
--> Byte 공간을 확보하여 오른쪽부터 문자로 채우는 기능을 가진 함수

SELECT 'ORACLE' "1"
    ,  RPAD('ORACLE', 10, '*') "2"
FROM DUAL;
--==>> ORACLE	ORACLE****




--  ● LTRIM()
SELECT 'ORAORAORACLEORACLE' "1"
      ,  LTRIM('ORAORAORACLEORACLE','ORA') "2"
      ,  LTRIM('AAAORAORAORACLEORACLE','ORA') "3"
      ,  LTRIM('ORAoRAORACLEORACLE','ORA') "4"
      ,  LTRIM('ORA ORAORAORACLEORACLE','ORA') "5"
      ,  LTRIM('   ORA ORAORAORACLEORACLE',' ') "6"
      ,  LTRIM('              ORACLE') "7"--왼쪽공백제거함수로활용(두번째 파라미터 생략)
FROM DUAL;
/*
ORAORAORACLEORACLE
CLEORACLE	
CLEORACLE	
oRAORACLEORACLE	
 ORAORAORACLEORACLE	
ORA ORAORAORACLEORACLE	
ORACLE*/

--> 첫 번째 파라미터 값에 해당하는 문자열을 대상으로
-- 왼쪽부터연속적으로 두 번째 파라미터 값에서 지정한 글자와 같은 글자가 등장할 경우
-- 이를 제거한 결과 값을 반환한다. 단, 완성형으로 처리되지 않는다.



--  ● RTRIM()
SELECT 'ORAORAORACLEORACLE' "1"
      ,  RTRIM('ORAORAORACLEORACLE','ORA') "2"
      ,  RTRIM('AAAORAORAORACLEORACLE','ORA') "3"
      ,  RTRIM('ORAoRAORACLEORACLE','ORA') "4"
      ,  RTRIM('ORA ORAORAORACLEORACLE','ORA') "5"
      ,  RTRIM('   ORA ORAORAORACLEORACLE',' ') "6"
      ,  RTRIM('              ORACLE') "7"
      ,  RTRIM('ORACLE             ') "8"
FROM DUAL;
/*
ORAORAORACLEORACLE	
ORAORAORACLEORACLE	
AAAORAORAORACLEORACLE	
ORAoRAORACLEORACLE	
ORA ORAORAORACLEORACLE	   
ORA ORAORAORACLEORACLE	 
             ORACLE
ORACLE 
             
             
             
             */
             
             
             
SELECT LTRIM('이김신이김신이이신신김이신이이김이김김김이신박이김신', '이김신') "테스트"
FROM DUAL;
--==>>박이김신


-- ● TRANSLATE()
--> 1 :1 로 바꿔준다.
SELECT TRANSLATE('MY ORACLE SERVER'
                , 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
                , 'abcdefghijklmnopqrstuvwxyz') "테스트"
FROM DUAL;

--==>> my oracle server

SELECT TRANSLATE('010-4002-7429'
                , '0123456789'
                , '영일이삼사오육칠팔구') "테스트"
FROM DUAL;
--==>> 영일영-사영영이-칠사이구

-- ● REPLACE()
SELECT REPLACE('MY ORACLE ORAHOME', 'ORA', '오라') "테스트"
FROM DUAL;
--==>> MY 오라CLE 오라HOME