OneDev
[SQL] 3. 내장함수(2) - 문자열 처리함수 본문
▣ CONCAT(char 1, char2)
concat 함수는 Cocatenation의 약자로, 두 문자를 결합하는 역할을 한다
select concat('Oracle', 'Korea') from dual
-- > Oracle Korea
▣ INITCAP(char)
주어진 문자열에서 각 단어의 첫 글자를 대문자로 변환시켜주는 함수
select initcap('oracle korea') from dual
-- > Oracle Korea
▣ LOWER(char)
문자열을 소문자로 변환시켜주는 함수
▣UPPER(char)
문자열을 대문자로 변환시켜주는 함수
▣ LPAD(char1, n, char2)
문자열(char1) 왼쪽에 다른 문자열(char2)을 끼워 넣는 역할을 한다
- n : 반환되는 문자열의 전체 길이
select lpad('Gil-dong', 10, 'G') from dual;
--> GGil-dong
▣ RPAD(char1, n, [char2])
LPAD와는 반대로, 오른쪽에 문자열을 끼워 넣는 역할을 한다.
▣ SUBSTR(char, m, [n])
문자열의 일부를 추출하는 함수. 문자열의 m 번째 자리부터 길이가 n인 문자열을 반환한다.
(m 이 음수일경우, 반대방향으로 n개의 문자를 반환한다)
select substr('Hong-Gildong', 3, 3) from dual;
--> ng-
▣ LENGTH(char)
문자열의 길이를 리턴
select length('ABCDE') from dual;
--> 5
▣ REPLACE(char, str1, str2)
문자열의 특정문자(str1)를 다른문자(str2)로 변환
select replace('miracle', 'mi', 'o') from dual;
--> oracle
▣ INSTR
- 문자열이 포함되어 있는지를 조사해 그 위치를 리턴
- 지정한 문자열이 발견되지 않으면 0이 반환된다
- Syntax : SELECT INSTR( str1, str2, n, m) FROM TABLE
- str1 : 검색 대상이 될 문자열
- str2 : 찾고자 하는 문자열
- n : 검색 시작위치 (생략 가능, 생략시 왼쪽부터 검색)
- m : 찾는 문자열이 여러개 있을경우, m 번쨰 검색되는 str2 의 위치를 반환
select instr('corporate floor', 'ok') from dual;
--> 0 : 검색결과 해당 문자열 없음
select instr('corporate floor', 'or') from dual;
--> 2 : 왼쪽에서 부터 검색을 시작해 처음 만나는 or 의 위치를 반환
select instr('corporate floor', 'or', 3) from dual;
--> 5 : 왼쪽에서 3번쨰부터 검색을 시작해 처음 만나는 or 의 위치를 반환
select instr('corporate floor', 'or', 3, 2) from dual;
--> 14 : 왼쪽에서 3번째부터 검색을 시작해 2번째 or 의 위치를 반환
▣ TRIM
- 특정한 문자를 제거
- 제거할 문자를 입력하지 않으면 기본적으로 공백이 제거된다
- 리턴값의 데이터 타입 : VARCHAR2
- LTRIM : 왼쪽의 지정한 문자를 제거
- RTRIM : 오른쪽의 지정한 문자를 제거
-- TRIM
select trim(0 from 0001234567000) from dual;
--> 1234567
-- LTRIM
select ltrim('xyxXyABCD', xy) from dual;
--> XyABCD
-- RTRIM
select rtrim('ABCDyxXxy', 'xy') from dual;
--> ABCDyxX
'DB\SQL > SQL(Oracle)' 카테고리의 다른 글
[SQL] 3. 내장함수(4) - 변환 함수(Conversion Function) to_char, to_date, to_number (0) | 2023.02.09 |
---|---|
[SQL] 3. 내장함수(3) - 날짜 처리 함수 (0) | 2023.02.09 |
[SQL] 3. 내장함수(1) - 숫자함수(ABS, CEL, ROUND, SQRT, TRUNC, MOD) (0) | 2023.02.06 |
[SQL] 2. 데이터 조작어(DML) - SELECT 문 & Oracle연산자 (0) | 2023.02.06 |
[SQL] 1. SQL 문 살펴보기(SQL문이란?, DDL, DML, DCL, TCL) (0) | 2023.02.01 |
Comments