반응형
✅ 1. Oracle 전용 함수 정리표
함수 이름기능 설명예시
NVL() | NULL이면 지정한 값으로 대체 | NVL(price, 0) |
DECODE() | IF처럼 조건 분기 처리 | DECODE(score, 90, 'A', 'B') |
SYSDATE | 현재 날짜와 시간 반환 | SELECT SYSDATE FROM DUAL |
TO_CHAR() | 숫자/날짜 → 문자열 변환 | TO_CHAR(SYSDATE, 'YYYY-MM-DD') |
TO_DATE() | 문자열 → 날짜 변환 | TO_DATE('2025-05-01', 'YYYY-MM-DD') |
TO_NUMBER() | 문자열 → 숫자 변환 | TO_NUMBER('1000') |
DUAL | 임시 테이블 (FROM 없이 SELECT 시 사용) | SELECT 1 FROM DUAL |
ROWNUM | 결과 행 번호 반환 (페이징용) | WHERE ROWNUM <= 5 |
RTRIM, LTRIM | 오른쪽/왼쪽 공백 제거 | RTRIM('ABC ') |
INSTR() | 문자열 위치 찾기 | INSTR('hello', 'e') → 2 |
SUBSTR() | 문자열 추출 | SUBSTR('hello', 2, 3) → ell |
✅ 2. 일반 SQL 함수 (표준 SQL/MySQL/다른 DB에서도 사용)
함수 이름기능 설명예시
COALESCE() | NULL이 아닌 첫 값 반환 | COALESCE(a, b, 0) |
CASE WHEN | 조건문 (IF 역할) | CASE WHEN score > 90 THEN 'A' ELSE 'B' END |
COUNT() | 행 개수 세기 | COUNT(*) |
SUM() | 합계 | SUM(price) |
AVG() | 평균 | AVG(score) |
MAX() | 최대값 | MAX(age) |
MIN() | 최소값 | MIN(age) |
NOW() | 현재 날짜/시간 (MySQL 등) | SELECT NOW() |
DATE_FORMAT() | 날짜 포맷 지정 (MySQL) | DATE_FORMAT(NOW(), '%Y-%m-%d') |
ROUND() | 반올림 | ROUND(12.345, 2) → 12.35 |
FLOOR() | 내림 | FLOOR(4.9) → 4 |
CEIL() / CEILING() | 올림 | CEIL(4.1) → 5 |
MOD() | 나머지 | MOD(10, 3) → 1 |
CONCAT() | 문자열 합치기 | CONCAT('Hi', ' there') |
LENGTH() | 문자열 길이 | LENGTH('hello') → 5 |
TRIM() | 앞뒤 공백 제거 | TRIM(' hi ') |
CAST() | 형 변환 | CAST(123 AS CHAR) |
🔍 요약 비교
분류Oracle 함수 예시일반 SQL 함수 예시
NULL 처리 | NVL() | COALESCE() |
조건 분기 | DECODE(), CASE | CASE |
날짜 | SYSDATE, TO_DATE() | NOW(), DATE_FORMAT() |
문자열 | SUBSTR(), INSTR() | SUBSTRING(), CONCAT() |
형 변환 | TO_CHAR(), TO_NUMBER() | CAST() |
반응형
'프로그래밍 > DataBase' 카테고리의 다른 글
DB(데이터베이스)에서 자주 쓰이는 용어들 (0) | 2025.05.09 |
---|---|
DB(데이터베이스)에서 자주 쓰이는 핵심 기능들 (0) | 2025.05.09 |