본문 바로가기
IT/@SQL

Oracle 문자함수 : CONCAT, INITCAP,LOWER,UPPER,LPAD,RPAD,LTRIM,RTRIM,SUBSTR, REPLACE,TRANSLATE)

by He;story 2020. 6. 8.

https://awesomek.tistory.com/entry/Oracle-%EA%B8%B0%EB%B3%B8%ED%95%A8%EC%88%98-%EC%88%AB%EC%9E%90%ED%95%A8%EC%88%98ABS-ROUND-TRUNC-CEIL-FLOOR-Power-MOD?category=865508

 

Oracle 기본함수: 숫자함수(ABS, ROUND, TRUNC, CEIL, FLOOR, Power, MOD)

https://awesomek.tistory.com/entry/Oracle-%EA%B8%B0%EB%B3%B8%ED%95%A8%EC%88%98-%EC%A7%91%EA%B3%84%ED%95%A8%EC%88%98-Order-by-SUM-AVG-MAX-MIN-COUNT?category=865508 Oracle 기본함수: 집계함수 (Order by..

awesomek.tistory.com


CONCAT 함수 : 문자열 연결(char1, char2)

 

Select concat('hello', 'bye'), concat('good','bad')from dual;

 

연산자를 이용하여 문자열 연결(||)

Select concat('good','bye') concats, 'good'||'bye' operators from dual;

 


INITCAP : 첫문자를 대문자로 변환

Select initcap('good morning!') from dual;

 

오라클에서는 공백이나, / 구분자로 생각하여 Bad, Morning을 첫글자로 인식하여 대문자로 변환

Select initcap('good/bye morning!') from dual;


LOWER : 대문자를 소문자로 변환

Select lower('GOOD') from dual;

 

UPPER : 소문자를 대문자로 변환

Select upper('good') from dual;


LPAD(expr1, n [,expr2]) : expr1을  n 만큼 왼쪽으로 늘려서 반환

Select lpad('good', 6) "LPAD1", 
lpad('good',7,'#') "LPAD2",
lpad('test', 8,'L') "LPAD3" from dual;

 

RPAD(expr1, n [,expr2]) : expr1을 n 만큼 오른쪽으로 늘려서 반환

select rpad('good', 6) "RPAD1", 
rpad('good',7,'#') "RPAD2",
rpad('test', 8,'L') "RPAD3" from dual;


LTRIM(char [,set]) : char 에서 set으로 지정된 문자를 왼쪽에서 제거

select ltrim('goodbye','g'), ltrim('goodbye','o'), ltrim('goodbye','go') from dual;

첫번째 ltrim에서 g는 정상적으로 지워진 것을 볼 수 있지만

두번째 ltrim은 o를 지정했지만 삭제가 되지 않았다.(중간에 껴있는 문자는 삭제가 안됨)

세번째 ltrim은 go를 지정했지만 그 뒤에 있는 o까지 삭제 된 것을 볼 수 있다.

g,o가 포함된 문제는 다 삭제.

 

 

RTRIM(char [,set]) : char 에서 set으로 지정된 문자를 오른쪽에서 제거

select rtrim('goodbye','e') from dual;


SUBSTR(char, position, leng) : 문자열 일부를 반환

Select substr('good morning tom', 8, 4) from dual;

8번째 자리에서 4글자를 반환(길이 값을 안쓸경우, 해당 포지션부터 쭉 반환)

Select substr('good morning tom', 8) from dual;


REPLACE 함수 : 문자열 일부를 대체해서 반환

Select replace('good bye tom','bye','hello') from dual;

Good bye tom에서 bye를 hello로 변환해서 반환


Translate 함수 : 문자  자체를 일대일로 대응, 변환

Select replace('You are not alone', 'You', 'We'),
Translate('You are not alone', 'You','We') from dual;

Replace와 비슷한 함수지만 문자 자체를 1:1로 변환한다.

Yo = We 그래서 o가 e로 변환되는 것을 볼 수 있다.


 

 

댓글