문자 함수는 문자 데이터를 조작하는 함수이다.
함수마다 필요한 argument(비슷한 말 : 인자, 인수, 파라미터, 매개변수) 갯수가 있다.
Character functions (문자 함수) |
Case-manipulation functions (대소문자 조작 함수) |
Character-manipulation functions (문자 조작 함수) |
- LOWER - UPPER - INITCAP
|
- CONCAT - SUBSTR - LENGTH - INSTR - LPAD / RPAD - LTRIM / RTRIM / TRIM - REPLACE |
문자 함수를 세분화하면 대소문자 조작함수와 문자 조작 함수로 나눌 수 있다.
간단한 예 하나씩만 들어보자.
########################################
Case-manipulation functions
(대소문자 조작 함수)
########################################
LOWER - 소문자로 변환시킨다.
실행 | 결과 |
SQL>select lower('SQL Plus') from dual; |
LOWER('S -------- sql plus |
UPPER - 대문자로 변환시킨다.
실행 | 결과 |
SQL>select upper('SQL Plus') from dual; |
UPPER('S -------- SQL PLUS |
INITCAP - 이니셜만 대문자로 변환시킨다.
실행 | 결과 |
SQL>select initcap('SQL Plus')
from dual; |
INITCAP( -------- Sql Plus |
########################################
Character-manipulation functions
(문자 조작 함수)
########################################
CONCAT - 두개의 문자를 합친다.
실행 | 결과 |
SQL>select concat('Hello', 'World') from dual; |
CONCAT('HE ---------- HelloWorld |
SUBSTR - 문자의 일부분을 추출한다.
실행 | 결과 |
SQL>select substr('HelloWorld',1,5) from dual; |
SUBST ----- Hello |
※ 'HelloWorld'라는 문자에서 1번째 자리부터 5글자까지 보여달라는 뜻이다.
LENGTH - 문자열의 길이를 알려준다.
실행 | 결과 |
SQL>select length('HelloWorld') from dual; |
LENGTH('HELLOWORLD') -------------------- 10 |
INSTR - 특정문자가 출현하는 위치를 알려준다.
실행 | 결과 |
SQL>select instr('HelloWorld', 'W') from dual; |
INSTR('HELLOWORLD',' -------------------- 6 |
※ 'HelloWorld'에서 'W'가 몇번째에 있는지 알려준다.(대소문자 구분해야 된다.)
LPAD - 오른쪽 정렬 후 왼쪽에 생긴 빈 공백에 특정 문자를 채운다.
실행 | 결과 |
SQL>select lpad('Hello',10,'+') from dual; |
LPAD('HELL ---------- +++++Hello |
※ 'Hello'를 오른쪽으로 정렬하고, 문자의 길이는 10글자이고, 왼쪽 공백에 '+'를 채운다.
RPAD - 왼쪽 정렬 후 오른쪽에 생긴 빈 공백에 특정 문자를 채운다.
실행 | 결과 |
SQL>select rpad('Hello',10,'+')
from dual; |
RPAD('HELL ---------- Hello+++++ |
LTRIM - 왼쪽에서 특정 문자를 삭제한다.
실행 | 결과 |
SQL>select ltrim('SOS', 'S') from dual; |
LT -- OS |
※ trim을 이용하면 "select trim(leading 'S' from 'SOS') from dual;"으로 표현할 수 있다.
RTRIM - 오른쪽에서 특정 문자를 삭제한다.
실행 | 결과 |
SQL>select rtrim('SOS', 'S') from dual; |
RT -- SO |
※ trim을 이용하면 "select trim(leading 'S' from 'SOS') from dual;"으로 표현할 수 있다.
TRIM - 특정 문자를 삭제한다.
실행 | 결과 |
SQL>select trim(both 'S' from 'SOS') from dual; |
T - O |
※ trim안에 both는 쓰지 않아도 상관없다.
REPLACE - 지정한 문자를 원하는 문자로 바꾼다.
실행 | 결과 |
SQL>select replace('JACK and JUE', 'J', 'BL') from dual; |
REPLACE('JACKA -------------- BLACK and BLUE |
※ 'JACK and JUE'에서 'J'를 'BL'로 바꾼다.
이 외에도 문자 함수의 종류가 더 있긴 있지만, 간단하고!!! 많이 쓰는!!! 문자함수에 대해서 소개해 보았다.
'SQL > ORACLE' 카테고리의 다른 글
[ORACLE]ALIAS란? (0) | 2014.02.12 |
---|---|
[ORACLE]ALIAS란? (0) | 2014.02.12 |
[ORACLE]SELECT문 해석 순서 (0) | 2014.02.12 |
[ORACLE]DUAL 테이블이란? (0) | 2014.02.12 |
[ORACLE]숫자 함수(number functions) (0) | 2014.02.12 |
[ORACLE]날짜 함수(Date Functions) (0) | 2014.02.12 |
Oracle Function(Date...) (0) | 2014.02.12 |
SQL - INDEX (0) | 2014.02.12 |