이미지09
Coding Story/DATABASE

[ Oracle ] 오라클 문자 함수 LPAD, TRIM, LTRIM, SUBSTR 등

반응형

 

 

현 포스팅은 세세하게 함수에 대해 알아보기 보다는 간단 요약해 참고하기 위한 포스팅이다.

 

 

 

어떤 입력값을 받아 정해진 루틴으로 작업을 하고 결과를 만들어 출력하는 것을 함수라 한다.

 

Oracle 함수의 여러 종류 중 문자 함수에 해당하는 UPPER, LOWER, SUBSTR, TRIM, LPAD 등을 살펴보자.

 

 

 

UPPER 함수

대문자로 변환해주는 함수이다.

SELECT UPPER(문자) FROM 테이블;

 

UPPER 함수 예제

--"HELLO"
SELECT UPPER('hello') FROM DUAL;

 

 

 

LOWER 함수

소문자로 변환해주는 함수이다.

LOWER(문자)

 

LOWER 함수 예제

--"hello"
SELECT LOWER('HELLO') FROM DUAL;

 

 

 

 

 

 

INITCAP 함수

이니셜만 대문자로 변환하는 함수이다.

INITCAP(문자)

 

INITCAP 함수 예제

--"Hello"
SELECT INITCAP('hello') FROM DUAL;

 

 

 

LENGTH 함수

문자 길이를 구하는 함수이다.

LENGTH(문자)

 

LENGTH 함수 예제

--5
SELECT LENGTH('HELLO') FROM DUAL;

 

 

 

SUBSTR 함수 / SUBSTRB 함수

문자열 일부만 추출하는 함수

SUBSTR : 대상 문자열이나 컬럼의 자료에서 시작 위치부터 선택 개수만큼의 문자 추출

SUBSTRB : 명시된 개수만큼의 문자가 아닌 바이트 수를 잘라냄

SUBSTR(문자, 자릿수)
SUBSTRB(문자, 자릿수)

 

SUBSTR 함수 / SUBSTRB 함수 예제

--"ELLO"
SELECT SUBSTR('HELLO', 2);

--"ELL"
SELECT SUBSTR('HELLO', 2, 3);

--"녕하세요"
SELECT SUBSTRB('안녕하세요', 4);

 

 

 

INSTR 함수

특정 문자의 위치를 구하는 함수.

찾는 문자가 없으면 0 을 반환하며 왼쪽에서 오른쪽으로 스캔함.

시작지점에 음수를 쓰면 오른쪽에서 왼쪽으로 스캔함.

INSTR(문자열, 찾고싶은 문자, 시작위치, 몇번째 인덱스)

 

INSTR 함수 예제

--'HELLO WORLD'에서 'DE'를 찾아라
--return 0
SELECT INSTR('HELLO WORLD', 'DE') FROM DUAL;

--'HELLO WORLD'에서 'LL'을 찾아라
--return 3
SELECT INSTR('HELLO WORLD', 'LL') FROM DUAL;

--HELLO WORLD'에서 4번째 인덱스부터 찾기 시작해서 'L'을 찾아라
--return 4
SELECT INSTR('HELLO WORLD', 'L', 4) FROM DUAL;

--HELLO WORLD'에서 4번째 인덱스부터 찾기시작해서 2번째로 나오는 'L'을 찾아라
--return 10
SELECT INSTR('HELLO WORLD', 'L', 4, 2) FROM DUAL;

 

 

 

LPAD 함수 / RPAD 함수

빈 공간을 특정 기호로 채워주는 함수이다.

LPAD : 오른쪽 정렬 후 왼쪽의 빈 공간에 특정 문자를 채움

RPAD : 왼쪽 정렬 후 오른쪽의 빈 공간에 특정 문자를 채움

채울 문자를 입력하지 않으면 공백이 들어간다.

LPAD(문자, 총 문자길이, 채울 문자)
RPAD(문자, 총 문자길이, 채울 문자)

 

LPAD 함수 / RPAD 함수 예제

--"####ORACLE"
SELECT LPAD('ORACLE', 10, '#') FROM DUAL;

--"ORACLE####"
SELECT RPAD('ORACLE', 10, '#') FROM DUAL;

--"ORACLE    "
SELECT RPAD('ORACLE', 10) FROM DUAL;

 

 

 

TRIM 함수 / LTRIM 함수 / RTRIM 함수

공백 문자를 제거하는 함수이다.

TRIM : 문자열 양 옆의 공백 및 문자를 제거

LTRIM : 문자열 왼쪽의 공백 및 문자를 제거

RTRIM : 문자열 오른쪽의 공백 및 문자를 제거

제거할 문자를 입력하지 않으면 공백을 제거한다.

TRIM(제거할 문자 FROM 문자열)

 

TRIM 함수 / LTRIM 함수 / RTRIM 함수 예제

--"HELLO"
SELECT TRIM('     HELLO  ');

--"HELLO"
SELECT TRIM('a' FROM 'aaHELLOaaaa');

--"HELLO  "
SELECT LTRIM('     HELLO  ');

--"HELLOaaaa"
SELECT LTRIM('a' FROM 'aaHELLOaaaa');

--"     HELLO"
SELECT RTRIM('     HELLO  ');

--"aaHELLO"
SELECT RTRIM('a' FROM 'aaHELLOaaaa');

 

 

 

 

 

 

반응형