SQLD 단원별 목록으로
1. 내장 함수(BUILT-IN FUNCTION) 개요
- 벤더에서 제공하는 함수인 내장 함수(Built-in Function)와 사용자가 정의할 수 있는 함수(User Defined Function)로 나눌 수 있다.
- 내장 함수는 다시 함수의 입력 값이 단일행 값이 입력되는 단일행 함수(Single-Row Function)와
여러 행의 값이 입력되는 다중행 함수(Multi-Row Function)로 나눌 수 있다.
- 단일행 함수의 특징
- SELECT, WHERE, ORDER BY 절에 사용 가능하다.
- 각 행(Row)들에 대해 개별적으로 작용하여 데이터 값들을 조작하고, 각각의 행에 대한 조작 결과를 리턴한다.
- 여러 인자(Argument)를 입력해도 단 하나의 결과만 리턴한다.
- 함수의 인자로 상수, 변수, 표현식이 사용 가능하고, 하나의 인수를 가지는 경우도 있지만 여러 개의 인수를 가질 수도 있다.
- 특별한 경우가 아니면 함수의 인자(Arguments)로 함수를 사용하는 함수의 중첩이 가능하다.
2. 문자형 함수
- 문자형 함수는 문자 데이터를 매개 변수로 받아들여서 문자나 숫자 값의 결과를 돌려주는 함수이다.
3. 숫자형 함수
- 데이터를 입력받아 처리하고 숫자를 리턴하는 함수이다.
4. 날짜형 함수
- DATE 타입의 값을 연산하는 함수이다.
- Oracle의 TO_NUMBER(TO_CHAR( )) 함수의 경우 변환형 함수로 구분할 수도 있으나
SQL Server의 YEAR, MONTH,DAY 함 수와 매핑하기 위하여 날짜형 함수에서 설명한다. EXTRACT/DATEPART는 같은 기능을 하는 Oracle 내장 함수와 SQL Server 내장 함수를 표현한 것이다.
- 데이터베이스는 날짜를 숫자로 저장하기 때문에 덧셈, 뺄셈 같은 산술 연산자로도 계산이 가능. 날짜에 숫자 상수를 더하거나 뺄 수 있다.
5. 변환형 함수
- 특정 데이터 타입을 다양한 형식으로 출력하고 싶을 경우에 사용되는 함수이 다. 변환형 함수는 크게 두 가지 방식이 있다.
6. CASE 표현
- IF-THEN-ELSE 논리와 유사한 방식으로 표현식을 작성해서 SQL의 비교 연산 기능을 보완하는 역할을 한다.
7. NULL 관련 함수
가) NVL/ISNULL 함수
나) NULL과 공집합
- 일반적인 NVL/ISNULL 함수 사용
- 공집합의 NVL/ISNULL 함수 사용
- SELECT 1 FROM DUAL WHERE 1 = 2; 와 같은 조건이 대표적인 공집합을 발생시키는 쿼리이며, 위와 같이 조건에 맞는
데이터가 한 건도 없는 경우를 공집합이라고 하고, NULL 데이터와는 또 다르게 이해해야 한다.
다) NULLIF
- EXPR1이 EXPR2와 같으면 NULL을, 같지 않으면 EXPR1을 리턴한다. 특정 값을 NULL로 대체하는 경우에 유용하게 사용할 수 있다.
라) 기타 NULL 관련 함수(COALESCE)
- 인수의 숫자가 한정되어 있지 않으며, EXPR에서 NULL 이 아닌 최초의 EXPR을 나타낸다. 모든 EXPR이 NULL이라면 NULL을 리턴
'자격증 > SQL개발자(SQLD)' 카테고리의 다른 글
3-8장. SQL 기본(ORDER BY 절) (2) | 2023.05.27 |
---|---|
3-7장. SQL 기본(GROUP BY, HAVING 절) (3) | 2023.05.27 |
3-5장. SQL 기본(WHERE 절) (8) | 2023.05.23 |
3-4장. SQL 기본(TCL[TRNSACTION CONTROL LANGUAGE]) (6) | 2023.05.23 |
3-3장. SQL 기본(DML[DATA DEFINITION LANGUAGE]) (6) | 2023.05.23 |