함수
1. 내장함수 (Buit-in Function)
(1) 단일행 함수 (Single-Row Function): 문자형 함수, 숫자형 함수, 날짜형 함수, 변환형 함수, NULL 관련 함수
(2) 다중행 함수 (Multi-Row Function): 집계함수, 그룹함수, 윈도우함수
2. 사용자 정의 함수 (User Defined Function)
단일행 함수 | 다중행 함수 |
---|---|
함수의 입력 행수가 1개 | 함수의 입력 행수가 여러개 |
1개의 결과값을 도출 | 여러 행을 바탕으로 1개의 결과값을 도출 |
각 행에 대한 조작결과를 리턴 | |
5개를 입력하면 5개가 출력 | 5개를 입력하면 1개가 출력 |
SELECT, WHERE. ORDER BY, UPDATE의 SET절에 사용 가능 | |
여러행이 결과로 나오는 열은 사용불가 | |
lower, upper, substr, length, trim, replace | sum, count, max, min, avg |
함수의 입력 행수에 따라 단일행 함수와 다중행 함수로 구분 할 수 있음
1:M 조인이라 하더라도 M쪽에서 출력된 행이 하나씩 단일행 함수의 입력값으로 사용되므로 사용할 수 있음
다중행 함수도 단일행 함수와 동일하게 단일 값만을 반환 함
종류 | 내용 | 함수의 예 |
---|---|---|
문자열 함수 | 문자를 입력하면 문자나 숫자값 반환 | LOWER, UPPER, SUBSTR/SUBSTRING, LENGTH, LEN, LTRIM, RTRIM, TRIM, ASCII |
숫자형 함수 | 숫자를 입력하면 숫자값 반환 | ABS, MOD, ROUND, TRUNC,SIGN... |
날짜형 함수 | DATE 타입의 값을 연산 | SYSDATE, GETDATE |
변환형 함수 | 문자, 숫자, 날짜형 값의 데이터 타입을 변환 | TO_NUMBER, TO_CHAR, TO_DATE, CONVERT... |
NULL관련 함수 | NULL을 처리하기 위한 함수 | NVL, ISNULL, NULLIF, COALESCE... |
(1) 집계함수
(2) 그룹함수
(3) 윈도우함수