SQL에서 AVG 함수 평균값

핵심 원리

AVG 함수는 SQL에서 사용되는 그룹 함수 중 하나로, 특정 컬럼의 평균값을 계산하여 반환합니다. 이 함수는 지정된 컬럼에서 NULL 값을 무시하고, 나머지 숫자형 값들에 대해서만 평균을 구합니다.

실무에서 쓰이는 이유

데이터베이스에서 특정 집합의 평균값을 구하는 것은 데이터를 분석하고 이해하는 데 필수적입니다. 예를 들어, 사원의 평균 급여를 계산하거나 제품의 평균 가격을 분석할 때 AVG 함수를 사용합니다. 이는 비즈니스 의사결정을 내릴 때 중요한 통계적 정보를 제공합니다.

실무에서 구체적으로 어떤 상황에서 사용되는지 예상 상황 예측

  1. 사원 관리 시스템: 회사의 인사 부서에서 사원들의 평균 급여를 분석하여 급여 인상 정책을 수립할 때.
  2. 판매 데이터 분석: 제품 판매 데이터에서 평균 판매 가격을 분석하여 할인 또는 가격 조정의 근거 자료로 사용할 때.
  3. 학교 성적 관리 시스템: 학생들의 과목별 평균 점수를 계산하여 성적 평가 및 학사 관리에 활용할 때.

연습 문제

  1. 다음 SQL 쿼리를 작성하여 특정 부서의 사원들의 평균 급여를 구하시오.
   SELECT AVG(sal) 
   FROM emp 
   WHERE deptno = 10;
  1. 모든 사원의 커미션 평균을 구하되, 커미션이 NULL인 경우 0으로 간주하여 계산하시오.
   SELECT AVG(NVL(comm, 0)) 
   FROM emp;

연습문제 해답

  1. 특정 부서의 평균 급여 계산
   SELECT AVG(sal) 
   FROM emp 
   WHERE deptno = 10;
  • 이 쿼리는 부서 번호가 10인 사원들의 평균 급여를 반환합니다.
  1. NULL을 0으로 간주한 커미션 평균 계산
   SELECT AVG(NVL(comm, 0)) 
   FROM emp;
  • 이 쿼리는 NULL 커미션을 0으로 처리하여 모든 사원의 커미션 평균을 계산합니다.

응용 문제

  1. 부서별 사원들의 평균 급여를 구하고, 급여가 높은 순서대로 정렬하시오.
   SELECT deptno, AVG(sal) AS avg_sal
   FROM emp
   GROUP BY deptno
   ORDER BY avg_sal DESC;
  1. 모든 사원의 평균 커미션을 구하되, 커미션이 NULL인 경우 0으로 간주하고, 커미션의 합계가 1000 이상인 부서의 평균 커미션만 출력하시오.
   SELECT deptno, AVG(NVL(comm, 0)) AS avg_comm
   FROM emp
   GROUP BY deptno
   HAVING SUM(NVL(comm, 0)) >= 1000;

응용문제 해답

  1. 부서별 평균 급여 구하기 및 정렬
   SELECT deptno, AVG(sal) AS avg_sal
   FROM emp
   GROUP BY deptno
   ORDER BY avg_sal DESC;
  • 이 쿼리는 부서별로 평균 급여를 계산한 후, 평균 급여가 높은 부서부터 낮은 부서 순으로 결과를 정렬합니다.
  1. 커미션 합계가 1000 이상인 부서의 평균 커미션 출력
   SELECT deptno, AVG(NVL(comm, 0)) AS avg_comm
   FROM emp
   GROUP BY deptno
   HAVING SUM(NVL(comm, 0)) >= 1000;
  • 이 쿼리는 부서별로 커미션 평균을 구하고, 커미션 합계가 1000 이상인 부서의 평균 커미션을 출력합니다.
Posts created 411

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top