[Oracle] Oracle Function(오라클 함수) - 다중행 함수(집계 함수)

2022. 5. 8. 12:10·DB/Oracle
목차
  1. 들어가기 전에
  2. 오라클 함수
  3. 합계를 구하는 SUM 함수
  4. 데이터 개수를 구하는 COUNT 함수
  5. 최댓값과 최솟값을 구하는 MAX, MIN 함수
  6. 평균 값을 구하는 AVG 함수
  7. 참고 자료
728x90
반응형

들어가기 전에

이 포스팅은 오라클로 배우는 데이터베이스 입문(이지훈 저)을 읽으면서 기억하고자 하는 내용 및 추가적으로 알아본 내용을 담았습니다. 책 전체 내용을 보시고 싶으신 분은 책을 구매하시어 읽어보시길 바랍니다.

오라클 함수

오라클 함수란, 특정한 결과 값을 얻기 위해 데이터를 입력할 수 있는 특수 명령어를 의미합니다. 오라클 함수는 함수를 제작한 주체를 기준으로 크게 2가지로 나뉩니다.

  • 내장 함수(built-in function): 오라클에서 기본으로 제공하고 있는 함수
    • 내장 함수는 입력 방식에 따라 데이터 처리에 사용하는 행이 나뉩니다.
    • 단일행 함수(single-row function): 데이터가 한 행씩 입력되고, 입력된 각 행별로 결과가 하나씩 나오는 함수
    • 다중행 함수(multiple-row function): 여러 행이 입력되어 하나의 행으로 결과가 반환되는 함수
  • 사용자 정의 함수(user-defined function): 사용자가 필요에 의해 직접 정의한 함수

단일행 함수와 다중행 함수(오라클로 배우는 데이터베이스 입문, 129p)

이번 시간에는 Oracle에서 제공하는 내장 함수 중 다중행 함수들에 대해 알아보도록 하겠습니다.

다중행 함수 예시

  • 다중행 함수는 위 SUM() 함수의 예시에서 볼 수 있듯이 조회를 했을 때 각 레코드별로 결과가 하나씩 생기지 않고, 하나의 행으로 결과가 반환됩니다.
  • 이러한 특징때문에 다중행 함수를 사용한 SELECT절에는 기본적으로 여러 행이 결과로 나올 수 있는 열을 함께 사용할 수 없습니다.

합계를 구하는 SUM 함수

SUM([DISTINCT, ALL 중 하나 선택(선택) - default ALL]
    [합계를 구할 열이나 연산자, 함수를 사용한 데이터(필수)])

SUM 함수 사용 예시

  • SUM 함수의 옵션을 DISTINCT로 주면, 중복 데이터가 제거되어 동일한 데이터는 합계에서 한 번만 더해집니다.

데이터 개수를 구하는 COUNT 함수

COUNT([DISTINCT, ALL 중 하나 선택(선택) - default ALL]
    [개수를 구할 열이나 연산자, 함수를 사용한 데이터(필수)])
OVER(분석을 위한 여러 문법 지정)(선택)

COUNT 함수 사용 예시

  • 위 예시에서 볼 수 있듯이 SELECT문을 통해 조회한 데이터의 개수를 구하고자 할 경우에는 COUNT(*)로 사용할 수 있습니다(첫 번째 예시).
    • COUNT(*)를 이용하면, 특정 회원이 작성한 글 수, 댓글 수 등을 알 수 있어 등업 여부를 확인하는 데 사용할 수 있습니다.
  • NULL 데이터는 COUNT 함수의 반환 개수에서 제외됩니다(두 번째 예시).

최댓값과 최솟값을 구하는 MAX, MIN 함수

MAX([DISTINCT, ALL 중 하나 선택(선택) - default ALL]
    [최댓값을 구할 열이나 연산자, 함수를 사용한 데이터(필수)])
OVER(분석을 위한 여러 문법 지정)(선택)

MIN([DISTINCT, ALL 중 하나 선택(선택) - default ALL]
    [최솟값을 구할 열이나 연산자, 함수를 사용한 데이터(필수)])
OVER(분석을 위한 여러 문법 지정)(선택)

MAX 함수, MIN 함수 사용 예시

  • 사실상, 최댓값과 최솟값은 중복 제거에 영향을 받지 않기 때문에 DISTINCT나 ALL을 따로 사용하지 않습니다.
  • 숫자 데이터의 최댓값, 최솟값 뿐 아니라 날짜 데이터와 문자 데이터의 MIN, MAX 값을 구할 수 있습니다.

평균 값을 구하는 AVG 함수

AVG([DISTINCT, ALL 중 하나 선택(선택) - default ALL]
    [평균값을 구할 열이나 연산자, 함수를 사용한 데이터(필수)])
OVER(분석을 위한 여러 문법 지정)(선택)

AVG 함수 사용 예시

참고 자료

  • 오라클로 배우는 데이터베이스 입문(이지훈 저)
728x90
반응형

'DB > Oracle' 카테고리의 다른 글

[Oracle] 조인(join)  (0) 2022.05.08
[Oracle] Oracle Function(오라클 함수) - GROUP BY절, HAVING절, 기타 그룹화 관련 함수  (0) 2022.05.08
[Oracle] Oracle Function(오라클 함수) - DECODE 함수와 CASE문  (0) 2022.05.08
[Oracle] Oracle Function(오라클 함수) - NULL 처리 함수  (0) 2022.05.07
[Oracle] Oracle Function(오라클 함수) - 형 변환 함수  (0) 2022.05.07
  1. 들어가기 전에
  2. 오라클 함수
  3. 합계를 구하는 SUM 함수
  4. 데이터 개수를 구하는 COUNT 함수
  5. 최댓값과 최솟값을 구하는 MAX, MIN 함수
  6. 평균 값을 구하는 AVG 함수
  7. 참고 자료
'DB/Oracle' 카테고리의 다른 글
  • [Oracle] 조인(join)
  • [Oracle] Oracle Function(오라클 함수) - GROUP BY절, HAVING절, 기타 그룹화 관련 함수
  • [Oracle] Oracle Function(오라클 함수) - DECODE 함수와 CASE문
  • [Oracle] Oracle Function(오라클 함수) - NULL 처리 함수
EARTH_ROOPRETELCHAM
EARTH_ROOPRETELCHAM
반응형
EARTH_ROOPRETELCHAM
ROOPRETELCHAM
EARTH_ROOPRETELCHAM
전체
오늘
어제
  • 분류 전체보기
    • FRAMEWORK
      • Spring
    • PROGRAMMING LANGUAGE
      • KOTLIN
      • JAVA
      • Design Pattern
    • DB
      • PostgreSQL
      • MySQL
      • Oracle
    • SYSTEM & INFRA
      • KAFKA
      • NGINX
      • TOMCAT
      • ANSIBLE
      • DOCKER
      • LINUX
      • AWS
      • OPEN API
    • AI
      • AI Tools
      • Generative AI
    • IDE
      • eclipse
      • IntelliJ
    • DEVELOPMENT TOOLS
      • Git
      • Build Tool
    • TECH BOOK
    • SECURITY
      • CHROME
    • ALGORITHM
      • C++
      • Greedy
      • DFS(Depth First Search
      • BFS(Breath First Search
      • Recursion
    • MAC
      • DEVELOP
    • WINDOWS
      • TIP
    • PRODUCTS
      • IT
    • IT Knowledge

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

springboot
게시판
자바
coroutine
PostgreSQL
kotlin
Spring
elastic beanstalk
게시판프로젝트
java
이펙티브 코틀린
mac
스프링부트
코틀린 완벽 가이드
effective kotlin
Oracle
git
MYSQL
IntelliJ
코틀린

최근 댓글

최근 글

hELLO· Designed By정상우.v4.5.3
EARTH_ROOPRETELCHAM
[Oracle] Oracle Function(오라클 함수) - 다중행 함수(집계 함수)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.