본문 바로가기
SQL/oracle

oracle SQL - 문자 함수

by jun.s.gi 2022. 12. 7.
728x90

 

대소문자 조작함수

오라클에서 저장된 데이터의 대소문자를 변환해서 출력하는 함수

함수 설명
LOWER(char) 대소문자, 대문자 문자열을 소문자로 변환
UPPER(char) 대소문자, 대문자 문자열을 대문자로 변환
INITCAP(char) 첫 문자는 대문자로, 나머지 문자는 소문자로 변환
select upper(email) as upper, lower(email) lower, initcap(email) initcap
from y_emp
where emp_id < 1005;

upper, lower, initcap 순서대로 사용

 

테이블이 없더라도 dual 허상 테이블을 이용하여 다양한 테스트를 할 수 있다.

select upper('hello') result1, initcap('hello') result2
from dual;

 

 

 

문자 조작 함수 CONCAT(), SUBSTR()

 1. concat()

 - 연결연산자 || 와 비슷하지만 인수의 개수가 2개로 제한되어 있다.

 

select CONCAT(emp_name, position)
from y_emp;

 

2. SUBSTR

지정한 문자열을 추출하는 함수로 

SUBSTR( 'Oracle SQL', m, n)

위 코드의 m과 n에는 숫자가 들어가는데 문자열의 m번 째 자리부터 길이가 n인 문자열을 반환한다.

만약 위에서 m = 4, n = 3일경우 

문자열의 4번째인 c부터 길이가 3인 cle을 반환한다.

 

그 외
함수 설명
INSTR(char1, char2, [m], [n]) 지정된 문자가 존재하는 위치를 숫자로 표시
LENGTH(char) 문자의 개수 반환
LENGTHB(char) 문자의 길이(바이트)를 반환
LPAD(char 1, n [, char2]) 전체 길이 n에 대하여 char1을 오른쪽 정렬하고 빈 곳을 char2로 채운다.
RPAD(char 1, n [, char2]) 전체 길이 n에 대하여 char1을 왼쪽 정렬하고 빈 곳을 char2로 채운다.
REPLACE(char1, str1, str2) 문자열의 특정 문자를 다른 문자로 변환한다.
str1을 str2로
TRIM(char2 FROM char1) char1의 접두어 또는 접미어에 해당하는 char2를 잘라낸다.
LTRIM(char1, char2) char1의 왼쪽에서 char2를 제거
RTRIM(char1, char2) char1의 오른쪽에서 char2를 제거
728x90