프로그래밍/SQL_Oracle

02_OracleDB SQL : 그룹함수과 단일행 함수 ( SUM, AVG, MAX, MIN, COUNT)

pupu91 2022. 7. 18. 19:42
반응형

 


그룹함수과 단일행 함수

 

 


 

 

  • 함수(FUNCTION) : 컬럼 값을 읽어서 계산한 결과를 리턴함
  • 그룹(GROUP) 함수 : 컬럼에 기록 된 N개의 값을 읽어서 한 개의 결과를 리턴
  • 단일행(SINGLE ROW) 함수 : 컬럼에 기록 된 N개의 값을 읽어서 N개의 결과를 리턴

   ☆ 결과 행의 갯수가 다르기 때문에 SELECT절에서 단일행 함수와 그룹 함수를 함께 사용 못함.

 

 

 


1. 그룹함수 : SUM, AVG, MAX, MIN, COUNT

 

  • SUM(숫자가 기록된 컬럼명) : 합계를 구하여 리턴
SELECT
       SUM(SALARY)
  FROM EMPLOYEE;
  
결과
EMPLOYEE 테이블의 SALARY 값 모두 합산됨.

 

 

 

 

  • AVG(숫자가 기록된 컬럼명) : 평균을 구하여 리턴
SELECT
       AVG(SALARY)
  FROM EMPLOYEE;

 

 

 

 

 

  • MIN(컬럼명) : 컬럼에서 가장 작은 값 리턴
SELECT
       MIN(EMAIL)
     , MIN(HIRE_DATE)
     , MIN(SALARY)
  FROM EMPLOYEE;

 

 

 

 

 

  • MAX(컬럼명) : 컬럼에서 가장 큰 값 리턴
SELECT
       MAX(EMAIL)
     , MAX(HIRE_DATE)
     , MAX(SALARY)
  FROM EMPLOYEE;

 

반응형

 

 

 

  •  COUNT
(1) COUNT(* | 컬럼명) : 행의 갯수를 헤아려서 리턴
(2) COUNT([DISTINCT] 컬럼명) : 중복을 제거한 행 갯수 리턴
(3) COUNT(*) : NULL을 포함한 전체 행 갯수 리턴
(4) COUNT(컬럼명) : NULL을 제외한 실제 값이 기록된 행 갯수 리턴

SELECT
       COUNT(*)
     , COUNT(DEPT_CODE)
     , COUNT(DISTINCT DEPT_CODE)
  FROM EMPLOYEE;

 

 

 

2 . 단일행 함수

 

  • 문자 관련 함수 (LENGTH, LENGTHB, SUBSTR, UPPER, LOWER, INSTR)
  • 날짜 처리 함수 (SYSDATE, MONTHS_BETWEEN, ADD_MONTHS, NEXT_DAY, LAST_DAT, EXTRACT)
  • 숫자 처리 함수 (ABS, MOD, ROUND, FLOOR, TRUNC, CEIL)
  • 형변환 함수 ( TO_CHAR,  TO_DATE, 자동형변환)
  • NULL 처리 함수 : NVL(컬럼명, 컬럼값이 NULL일때 바꿀 값)
  • 선택함수 : DECODE(계산식 | 컬럼명, 조건값1, 선택값1, 조건값2, 선택값2 ...)

 

반응형