좋아요! Oracle 19c에서 자주 사용하는 내장 함수들을 카테고리별로 예제 중심으로 설명드릴게요.
문서는 MediaWiki 문법으로 작성되었으며, 함수 이름, 간단한 설명, 예제 쿼리, 결과까지 포함했습니다.
아래 형식으로 제공드릴게요:
⸻
Oracle 19c 주요 내장 함수 예제
문자열 함수
함수
|
설명
|
예제
|
결과
|
UPPER
|
소문자를 대문자로 변환
|
SELECT UPPER('oracle') FROM DUAL;
|
ORACLE
|
LOWER
|
대문자를 소문자로 변환
|
SELECT LOWER('ORACLE') FROM DUAL;
|
oracle
|
INITCAP
|
각 단어의 첫 글자만 대문자로
|
SELECT INITCAP('oracle database') FROM DUAL;
|
Oracle Database
|
LENGTH
|
문자열 길이 반환
|
SELECT LENGTH('Oracle') FROM DUAL;
|
6
|
SUBSTR
|
문자열 자르기 (시작 위치부터 길이만큼)
|
SELECT SUBSTR('OracleDatabase', 1, 6) FROM DUAL;
|
Oracle
|
INSTR
|
문자열 내 특정 문자의 위치 반환
|
SELECT INSTR('OracleDatabase', 'D') FROM DUAL;
|
7
|
TRIM
|
앞뒤 공백 제거
|
SELECT TRIM(' Oracle ') FROM DUAL;
|
Oracle
|
숫자 함수
함수
|
설명
|
예제
|
결과
|
ROUND
|
반올림
|
SELECT ROUND(123.456, 2) FROM DUAL;
|
123.46
|
TRUNC
|
소수점 이하 자르기
|
SELECT TRUNC(123.456, 2) FROM DUAL;
|
123.45
|
MOD
|
나머지 반환
|
SELECT MOD(10, 3) FROM DUAL;
|
1
|
CEIL
|
올림
|
SELECT CEIL(4.2) FROM DUAL;
|
5
|
FLOOR
|
내림
|
SELECT FLOOR(4.8) FROM DUAL;
|
4
|
날짜 함수
함수
|
설명
|
예제
|
결과
|
SYSDATE
|
현재 날짜/시간 반환
|
SELECT SYSDATE FROM DUAL;
|
2025-06-02 (예시)
|
ADD_MONTHS
|
날짜에 개월 수 더하기
|
SELECT ADD_MONTHS(DATE '2025-01-01', 2) FROM DUAL;
|
2025-03-01
|
MONTHS_BETWEEN
|
날짜 사이의 개월 수
|
SELECT MONTHS_BETWEEN(DATE '2025-06-01', DATE '2025-01-01') FROM DUAL;
|
5
|
LAST_DAY
|
해당 달의 마지막 날
|
SELECT LAST_DAY(DATE '2025-02-10') FROM DUAL;
|
2025-02-28
|
NEXT_DAY
|
다음 특정 요일 찾기
|
SELECT NEXT_DAY(DATE '2025-06-01', 'FRIDAY') FROM DUAL;
|
2025-06-06
|
변환 함수
함수
|
설명
|
예제
|
결과
|
TO_CHAR
|
날짜 → 문자로 변환
|
SELECT TO_CHAR(DATE '2025-06-01', 'YYYY/MM/DD') FROM DUAL;
|
2025/06/01
|
TO_DATE
|
문자 → 날짜로 변환
|
SELECT TO_DATE('2025-06-01', 'YYYY-MM-DD') FROM DUAL;
|
2025-06-01
|
TO_NUMBER
|
문자 → 숫자로 변환
|
SELECT TO_NUMBER('12345') FROM DUAL;
|
12345
|
금액표시 TO_CHAR 함수사용
SELECT TO_CHAR(1234567890,'FM999,999,999,999') AS val
FROM dual
정규식 함수를 사용
SELECT REGEXP_REPLACE(REVERSE(REGEXP_REPLACE(REVERSE(TO_CHAR(1234567890)), '(\d{3})','\1,')), '^,','') AS val
FROM dual
NULL 처리 함수
함수
|
설명
|
예제
|
결과
|
NVL
|
NULL이면 다른 값 반환
|
SELECT NVL(NULL, 'Default') FROM DUAL;
|
Default
|
NVL2
|
NULL이면 A, 아니면 B 반환
|
SELECT NVL2('Hello', 'Y', 'N') FROM DUAL;
|
Y
|
COALESCE
|
가장 먼저 NULL이 아닌 값 반환
|
SELECT COALESCE(NULL, NULL, 'Hi', 'Hello') FROM DUAL;
|
Hi
|
NULLIF
|
두 값이 같으면 NULL, 다르면 첫 번째 값
|
SELECT NULLIF(10, 10) FROM DUAL;
|
(null)
|
집계 함수
함수
|
설명
|
예제
|
결과
|
COUNT
|
행 수 세기
|
SELECT COUNT(*) FROM employees;
|
107 (예시)
|
SUM
|
합계
|
SELECT SUM(salary) FROM employees;
|
250000 (예시)
|
AVG
|
평균
|
SELECT AVG(salary) FROM employees;
|
5000 (예시)
|
MAX
|
최대값
|
SELECT MAX(salary) FROM employees;
|
10000 (예시)
|
MIN
|
최소값
|
SELECT MIN(salary) FROM employees;
|
3000 (예시)
|