DB 공부

문자열 관련 함수들

gyk7 2024. 8. 28. 23:24

Oracle

1. LOWER(문자열) / UPPER(문자열) / INITCAP(문자열)

LOWER : 문자열을 모두 소문자로 변환하여 반환한다.

UPPER : 문자열을 모두 대문자로 변환하여 반환한다.

INITCAP : 문자열의 첫 번째 문자는 대문자, 나머지는 소문자로 변환하여 반환한다.

SELECT 
	LOWER('hello ORACLE!') AS LOWER,
	UPPER('hello ORACLE!') AS UPPER,
    INITCAP('hello ORACLE!') AS INITCAP
FROM test;
LOWER UPPER INITCAP
hello oracle! HELLO ORACLE! Hello Oracle!

 

2. LENGTH(문자열)

SELECT
	LENGTH('Hello Oracle') AS LENGTH
FROM test;
LENGTH
12

 

3. CONCAT(문자열1, 문자열2)

문자열1과 문자열2를 합친다.

SELECT
	CONCAT('Hello', 'World') AS CASE1,
    CONCAT('Happy', 'Day') AS CASE2
FROM test;
SELECT 
	'Hello' || 'World' AS CASE1,
    'Happy' || 'Day' AS CASE2
FROM test;
CASE1 CASE2
HelloWorld HappyDay

 

SELECT
	CONCAT(CONCAT('Hello', ' '), 'World') AS CASE1,
    CONCAT(CONCAT('Happy', ' '), 'Day') AS CASE2
FROM test;
SELECT
	'Hello' || ' ' || 'World' AS CASE1,
     'Happy' || ' ' || 'Day' AS CASE2
FROM test;
CASE1 CASE2
Hello World Happy Day

 

4. SUBSTR(문자열, 시작위치, 길이)

길이는 생략 가능. 생략 시 문자열의 끝까지 반환.

SELECT
	SUBSTR('Hello World', 2) AS CASE1,
    SUBSTR('Hello World', 8, 4) AS CASE2
FROM test;
CASE1 CASE2
ello World orld

 

-를 쓰면 문자열을 뒤에서부터 자르는 것도 가능함.

 

5. LPAD(문자열, 길이, 문자) / RPAD(문자열, 길이, 문자)

입력받은 문자열에서 길이까지 입력 문자로 채운다.

LPAD : 왼쪽, RPAD : 오른쪽

SELECT
	LPAD(10, 5, '0') AS CASE1,
    LPAD(11, 5, '0') AS CASE2,
    LPAD(12, 5, '0') AS CASE3
FROM test;
CASE1 CASE2 CASE3
00010 00011 00012

 

SELECT
	RPAD(1, 5, '0') AS CASE1,
    RPAD(2, 5, '0') AS CASE2,
    RPAD(3, 5, '0') AS CASE3
FROM test;
CASE1 CASE2 CASE3
10000 20000 30000

 

6. TRIM(문자열) / LTRIM(문자열, 옵션) / RTRIM(문자열, 옵션)

TRIM : 문자열의 양쪽 공백을 제거

LTRIM : 문자열의 왼쪽 공백을 제거하거나, 특정 문자, 반복적인 문자를 제거

RTRIM : 문자열의 오른쪽 공백을 제거하거나, 특정 문자, 반복적인 문자를 제거

SELECT
	TRIM('        Hi      ') AS CASE1,
    TRIM('     Hello      ') AS CASE2
FROM test;
CASE1 CASE2
Hi Hello
SELECT
	LTRIM('    Hi    ') AS CASE1,
    LTRIM('   ?    !') AS CASE2,
    LTRIM('HiHiHello', 'Hi') AS CASE3,
    LTRIM('HiHi Hello', 'H') AS CASE4
FROM test;
CASE1 CASE2 CASE3 CASE4
Hi____ ?! ello iHi Hello

 

'DB 공부' 카테고리의 다른 글

JOIN 종류와 수행 원리(2)  (0) 2025.01.06
오라클 파티션 인덱스  (0) 2024.11.27
null 값 처리 함수들 특징  (0) 2024.08.27
Oracle vs PostgreSQL  (0) 2024.08.26
오라클 쿼리 힌트  (0) 2024.08.26