[과목2.SQL 기본 및 활용 - 3-6. 함수(FUNCTION)]
1. 단일행 함수 특징
(1) SLEECT, WHERE , ORDER BY 절에서 사용 가능
(2) 각 행들에 대해 개별적으로 작용, 각각의 행에 대한 조작 결과를 리턴
(3) 여러인자를 입력해도 단 하나의 결과만 리턴
(4) 여러 개의 인수를 가질 수도 있다
(5) 함수의 중첩이 가능
2. 단일 행 함수의 종류
(1) 문자형 함수: 문자나 숫자값 반환 (LOWER, UPPER, SUBSTR 등..)
(2) 숫자형 함수: 숫자값 반환 (ABS, MOD, ROUND, TRUNC 등..)
(3) 날짜형 함수 : DATE 타입의 값을 연산 (SYSDATE 등)
(4) 변환형 함수 : 데이터 타입을 다양한 형식으로 변환/출력 (TO_NUMBER, TO_CHAR 등)
(5) NULL 관련 함수 : NULL 처리위한 함수 (NVL, NULLIF 등)
3. 날짜형 데이터 연산
(1) 날짜 + 숫자 = 날짜 : 숫자만큼 날을 날짜에 더한다
(2) 날짜 – 숫자 = 날짜 : 숫자만큼 날을 날짜에 뺀다.
(3) 날짜1 – 날짜2 = 날짜수 : 다른 하나의 날짜에서 하나의 날짜를 빼면 일수가 나온다.
(4) 날짜 + 숫자/24 = 날짜 : 시간을 날짜에 더한다
(5) 날짜 + 숫자/24/60 = 날짜 : 분을 날짜에 더한다.
4. 단일 행 CASE 표현의 종류
예시)
CASE WHEN 조건
THEN 값 혹은 SQL문
ELSE 값 혹은 SQL문
END
DECODE (조건1, 값1, 조건2, 값2, 디폴트값) - oracle에서만 사용!
5. NULL 연산 결과
: NULL은 +,-,*,/ 어떤 연산을 해도 다 NULL이다.
6. COALESCE 함수
: NULL이 아닌 최초의 표현식 나타낸다. 모든 표현식이 NULL이라면 NULL을 나타낸다.
예시 ) COALESCE(표현식1, 표현식2, 표현식3 …. )