함수?
:어떤 입력 값을 받아서 정해진 루틴에 의해 작업을 하고 결과값을 만들어서 출력해주는 것
1) 함수의 종류
1. 단일 행 함수
2. 복수 행 함수
2) 단일 함수
(1) 문자 함수
- INITCAP() : 영어에서 첫 글자만 대문자로 출력하고 나머지는 전부 소문자로 출력하는 함수
- LOWER() / UPPER() : 입력되는 값을 전부 소문자 / 대문자로 변경하는 함수
- LENGTH() / LENGTHB() : 지정된 문자열의 길이를(byte 수를) 계산해 주는 함수
- SUBSTR() : 주어진 문자열에서 특정길이의 문자를 골라낼 때 사용하는 함수
- SUBSTRB() : 아래와 동일하며 추출할 자릿수가 아니라 추출할 byte 수를 지정하는 함수
- INSTR() : 주어진 문자열이나 컬럼에서 특정 글자가 있는 위치를 찾아주는 함수
- LPAD() : 원래 데이터를 오른쪽에 두고 왼쪽에 빈자리가 있을 경우 왼쪽을 특정 기호나 문자로 채우는 7함수
- RPAD() : 원래 데이터는 왼쪽에 두고 오른쪽 공백을 특정 기호나 문자로 채우는 함수
- LTRIM() : 왼쪽에 지정된 문자가 있을 경우 제거하는 함수
- RTRIM() : 오른쪽에 지정된 문자가 있을 경우 제거하는 함수
- REPLACE() : 첫 번째 문자열이나 컬럼에서 문자1을 문자2로 바꾸는 함수
(2) 숫자 함수
(3) 날짜 함수
(4) 데이터 형 변환 함수
- TO_CHAR() :
숫자 → 문자로 형 변환
날짜 → 문자로 형 변환
- TO_NUMBER() : 숫자가 아닌 숫자처럼 생긴 문자를 숫자로 바꾸어 주는 함수
- TO_DATE() : 날짜가 아닌 날짜처럼 생긴 문자를 날짜로 바꿔 주는 함수
(5) 다양한 일반 함수
- NVL() : Null VaLue
- DECODE() : IF 문과 일맥상통
- CASE : DECODE 함수는 주로 = 조건 값을 처리하는 데 사용; 크거나 작은 조건을 처리할 때 CASE를 사용
1) 기본적인 그룹 함수들
① COUNT() : 함수에 입력되는 데이터의 총 건수를 반환하는 함수
② SUM() : 입력된 데이터들의 합계 값을 구하는 함수
③ AVG() : 입력된 값들의 평균값을 구해주는 함수
④ MAX() / MIN() : 주어진 데이터 중에서 가장 큰(작은) 값을 반환하는 함수
2) GROUP BY 절
GROUP BY 절은 특정 조건으로 세부적인 결과를 출력한다.
사용할 때 주의 사항이 있는데,
1. SELECT 절에 사용된 그룹함수 이외의 컬럼이나 표현식은 반드시 GROUP BY 절에 사용되어야 한다.
2. GROUP BY 절에 사용된 컬럼은 SELECT 절에 사용되지 않아도 된다.
3. GROUP BY 절에는 반드시 컬럼명이 사용되어야 하며 컬럼 별칭은 사용하면 안된다.
3) HAVING 절
④ MAX() / MIN() : 주어진 데이터 중에서 가장 큰(작은) 값을 반환하는 함수
4) 데이터들을 모아서 집계를 해주는 함수들
① ROLLUP() : 주어진 데이터들의 소계를 구해주는 함수
cf. 각 항목의 소계는 나오지만 전체 총계는 나오지 않는다.
② CUBE() : 주어진 데이터들의 전체 총계까지 구해주는 함수
③ GROUPING SETS() : 하나의 테이블에 다양한 집계 함수를 사용해야 할 경우 쓰는 함수
④ LISTAGG() : 쉽게 그룹핑을 해주는 함수