단일행 함수는 여러건의 데이터를 한꺼번에 처리하는 것이 아니라 한 번에 하나씩 처리하는 함수 이고 복수행 함수는 여러건의 데이터를 입력 받아서 결괏값 1건을 만들어 주는 것이라고 알아두면 되겠다.
자주 사용되는 문자 함수들을 정리해보고 몇가지 예제를 실행해보겠다
* INITCAP : 입력 값의 첫 글자만 대문자로 변환 // INITCAP('abcd') --> Abcd
* LOWER : 입력 값을 전부 소문자로 변환 // LOWER('ABCD') --> abcd
* UPPER : 입력 값을 전부 대문자로 전환 // UPPER('abcd') --> ABCD
* LENGTH : 입력된 문자열의 길이 값을 출력 // LENGTH('한글') --> 2
* LENGTHB : 입력된 문자열의 길이의 바이트 값을 출력 // LENGTHB('한글') --> 4
* CONCAT : 두 문자열을 결합해서 출력 || 연산자와 동일 // CONCAT('A','B') --> AB
* SUBSTR : 주어진 문자에서 특정 문자만 추출 // SUBSTR('ABC',1,2) --> AB
(** 1번쨰부터 2글자 출력)
* SUBSTRB : 주어진 문자에서 특정 바이트만 추출 // SYBSTRB('한글',1,2) --> 한
(** 1번쨰부터 2바이트까지 출력)
* INSTR : 주어진 문자에서 특정 문자의 위치 추출 // INSTR('A*B#','#') --> 4
* INSTRB : 주어진 문자에서 특정 문자의 위치 바이트값 추출 // INSTRB('한글로','로') -> 5
* LPAD : 주어진 문자열에서 왼쪽으로 특정 문자를 채움 // LPAD('love',6,'*') -> **love
(주어진 문자열이 6 길이가 될때까지 왼쪽으로 채운다)
* RPAD : 주어진 문자열에서 오른쪽으로 특정 문자를 채움 // RPAD('love',6,'*') -> love**
(주어진 문자열이 6 길이가 될때까지 오른쪽으로 채운다)
* LTRIM : 주어진 문자열에서 왼쪽의 특정 문자를 삭제 // LTRIM('*love','*') -> love
* RTRIM : 주어진 문자열에서 오른쪽의 특정 문자를 삭제 // RTRIM('love*','*') -> love
* REPLACE : 주어진 문자열에서 A를 B로 치환 // REPLACE('AB',A','E') --> EB
'clark' 를 '**ark' 로 바꾸는 예제
비슷하게 'smith' -> s--th' 로 바꾸는 예제
* REGEXP_REPLACE
* REGEXP_INSTR
* REGEXP_SUBSTR
* REGEXP_LIKE
* REGEXP_ COUNT
등의 변형 함수도 있으니 다음에 한번 다루어보겠다.
SUBSTR 과 REPLACE 함수는 중요하고 자주 쓰이니 몇 번 써보면서 감각을 익히면 되겠다.
'Oracle SQL' 카테고리의 다른 글
<Oracle SQL >DATABASE NOT OPEN (ORA-01109) (0) | 2020.10.30 |
---|---|
<Oracle SQL> NVL() 함수 (NULL) (0) | 2020.10.22 |
<Oracle SQL>연결 연산자로 컬럼을 붙여서 출력하기( || ) (0) | 2020.10.22 |
Oracle SQL SCOTT 계정 활성화 (0) | 2020.10.21 |
Sql Developer 실행 안됨, 자동 꺼짐 현상 (5) | 2020.10.15 |