1. SUBSTR - 문자열 자르기
SELECT SUBSTR('HELLO', 1,3) FROM DUAL; // 1번째부터 3개 자르기
SELECT SUBSTR('HEELO',3) FROM DUAL; // 3번째부터 끝까지 자르기
SELECT SUBSTRB('안녕하세요',1,3) FROM DUAL; // 첫 3바이트 추출 // 안
* 참고로 영어는 1byte이지만 한글은 UTF-8 인코딩에서는 3byte , UTF-16 인코딩에서는 2byte를 차지합니다.
2. CONCAT - 문자열 합치기
SELECT CONCAT('HE','LLO') FROM DUAL;
SELECT 'HE'||'LLO' FROM DUAL;
* 참고로 || 연산이 더 빠릅니다.
3. TRIM - 공백 제거
SELECT LTRIM(' HELLO ') FROM DUAL; // 'HELLO '
SELECT RTRIM(' HELLO ') FROM DUAL; // ' HELLO'
SELECT TRIM(' HELLO ') FROM DUAL; // 'HELLO'
4. LOWER / UPPER
SELECT LOWER('AbC') FROM DUAL; // abc
SELECT UPPER('AbC') FROM DUAL; // ABC
5. REPLACE - 문자열 대치
SELECT REPLACE('WHERE WE ARE', 'WE', 'YOU') FROM DUAL; // WHERE YOU ARE
SELECT TRANSLATE('WHERE WE ARE', 'WE', 'YOU') FROM DUAL; // YHORO YO ARO
* 참고로 TRANSLATE는 W는 Y로 E는 O로 바뀝니다. U는요..? 뭐 없습니다. 길이가 같아야 의미가 있는데 (WE와 YOU) 에러는 안난다고 합니다.
6. PAD - 문자열 패딩
SELECT LPAD('HELLO', 10, '0') FROM DUAL; // 00000HELLO
SELECT RPAD('HELLO', 10, '0') FROM DUAL; // HELLO00000
7. INITCAP - 첫 글자 대문자
SELECT INITCAP('hi hello') FROM DUAL; // Hi Hello
SELECT INITCAP('hi he안녕llo') FROM DUAL; // Hi He안녕Llo
8. INSTR - 문자열 검색
SELECT INSTR('ALL WE NEED TO IS JUST TO...', 'TO') FROM DUAL; // 13
SELECT INSTR('ALL WE NEED TO IS JUST TO...', 'TO', 15) FROM DUAL; // 24
SELECT INSTR('ALL WE NEED TO IS JUST TO...', 'TO', 1, 2) FROM DUAL; // 24
* 참고로 공백도 셉니다.
9. LENGTH - 문자열 길이
SELECT LENGTH('HELLO') FROM DUAL; // 5
10. ASCII - 코드 값 반환
SELECT ASCII('A') FROM DUAL; // 65
11. CHR - 문자 반환
SELECT CHR(65) FROM DUAL; // A
'SQL' 카테고리의 다른 글
[Oracle] 날짜 내장 함수 (1) | 2024.06.15 |
---|---|
[Oracle] 숫자 내장 함수 (0) | 2024.06.15 |
[Oracle] 기초 (MySQL과의 소소한 차이) (0) | 2024.06.08 |
[MySQL] Index 이해하기 (0) | 2024.06.02 |
[MySQL] Join 알아보기 + 집합 연산 + 서브쿼리 (0) | 2024.06.01 |