SQL의 AVG 함수를 사용하여 특정 조건을 충족하는 데이터의 평균을 계산하는 방법을 설명합니다. 이 기술은 데이터 분석 및 보고서 작성에서 매우 유용합니다. 이 기사에서는 AVG 함수의 기본 사용법부터 조건을 지정하여 평균을 계산하는 실질적인 방법까지 자세히 설명합니다.
AVG 함수의 기본 구문
AVG 함수는 지정된 열의 평균을 계산하는 데 사용되는 집계 함수입니다. 기본 구문은 다음과 같습니다.
SELECT AVG(열 이름) FROM 테이블 이름;
이 쿼리는 테이블 내에서 지정된 열의 평균을 계산합니다. 예를 들어, salary
열의 평균을 계산하려면 다음과 같이 합니다.
SELECT AVG(salary) FROM employees;
이 쿼리는 employees
테이블의 salary
열의 평균을 반환합니다.
WHERE 절을 사용한 조건 지정
WHERE 절을 사용하여 특정 조건을 충족하는 데이터를 추출하고 해당 데이터에 대해 AVG 함수를 사용할 수 있습니다. 기본 구문은 다음과 같습니다.
SELECT AVG(열 이름) FROM 테이블 이름 WHERE 조건;
예를 들어, employees
테이블에서 급여가 50000 이상인 직원들의 평균 급여를 계산하려면 다음과 같이 합니다.
SELECT AVG(salary) FROM employees WHERE salary >= 50000;
이 쿼리는 급여가 50000 이상인 직원들의 평균 급여를 계산합니다. WHERE 절을 사용하면 특정 조건을 충족하는 데이터만 대상으로 평균을 구할 수 있습니다.
그룹화하여 평균을 계산하는 방법
GROUP BY 절을 사용하여 데이터를 그룹화하고 각 그룹의 평균을 계산할 수 있습니다. 기본 구문은 다음과 같습니다.
SELECT 그룹화할 열, AVG(열 이름) FROM 테이블 이름 GROUP BY 그룹화할 열;
예를 들어, employees
테이블에서 부서별 평균 급여를 계산하려면 다음과 같이 합니다.
SELECT department, AVG(salary) FROM employees GROUP BY department;
이 쿼리는 employees
테이블의 department
열로 그룹화하여 각 부서의 평균 급여를 계산합니다. GROUP BY 절을 사용하면 데이터를 특정 카테고리별로 나누어 집계할 수 있습니다.
실제 예: 특정 조건을 충족하는 데이터의 평균 계산
여기에서는 실제 SQL 쿼리를 사용하여 특정 조건을 충족하는 데이터의 평균을 계산하는 방법을 보여줍니다. 예를 들어, employees
테이블에서 “영업 부서”에 근무하는 직원들의 평균 급여를 계산하려면 다음과 같이 합니다.
SELECT AVG(salary) FROM employees WHERE department = 'Sales';
이 쿼리는 employees
테이블에서 department
열이 ‘Sales’인 직원들의 salary
열의 평균을 계산합니다.
또한, 특정 조건을 충족하는 데이터를 그룹화하여 평균을 계산하는 경우도 있습니다. 예를 들어, “각 부서의 평균 급여”를 계산하고, 그중 “급여가 60000 이상인 직원”을 대상으로 하려면 다음과 같이 합니다.
SELECT department, AVG(salary) FROM employees WHERE salary >= 60000 GROUP BY department;
이 쿼리는 salary
가 60000 이상인 직원들을 부서별로 그룹화하고, 각각의 평균 급여를 계산합니다. 실제 데이터에 대해 이러한 쿼리를 사용하면 특정 조건을 충족하는 데이터의 평균을 유연하게 계산할 수 있습니다.
응용 예: 여러 조건 지정
AND나 OR 연산자를 사용하여 여러 조건을 지정하면 더 세부적인 필터링을 통해 특정 데이터의 평균을 계산할 수 있습니다.
예를 들어, employees
테이블에서 “영업 부서”에 소속되며 “급여가 50000 이상”인 직원들의 평균 급여를 계산하려면 다음과 같이 합니다.
SELECT AVG(salary) FROM employees WHERE department = 'Sales' AND salary >= 50000;
이 쿼리는 department
가 ‘Sales’이고 salary
가 50000 이상인 직원들의 평균 급여를 계산합니다.
또한, 여러 조건을 OR 연산자로 지정하여 어느 하나의 조건을 충족하는 데이터를 추출할 수도 있습니다. 예를 들어, “영업 부서” 또는 “마케팅 부서”에 소속된 직원들의 평균 급여를 계산하려면 다음과 같이 합니다.
SELECT AVG(salary) FROM employees WHERE department = 'Sales' OR department = 'Marketing';
이 쿼리는 department
가 ‘Sales’이거나 ‘Marketing’인 직원들의 평균 급여를 계산합니다. 여러 조건을 결합함으로써 특정 조건을 충족하는 데이터의 평균을 더 세부적으로 분석할 수 있습니다.
요약
SQL의 AVG 함수를 사용하여 특정 조건을 충족하는 데이터의 평균을 계산하는 방법에 대해 설명했습니다. 기본 구문부터 시작해 WHERE 절과 GROUP BY 절을 사용한 조건 지정, 그리고 AND 및 OR 연산자를 사용한 여러 조건의 지정 방법에 대해 설명했습니다. 이러한 기술을 활용하면 데이터베이스 내의 특정 데이터를 유연하고 효율적으로 분석할 수 있습니다. 데이터 분석 및 보고서 작성에서 이러한 방법을 사용하여 정확한 평균을 산출하고 의사결정에 활용해 보세요.