[sql] 서브쿼리를 사용한 데이터 그룹핑

서브쿼리는 SQL 쿼리 안에 또 다른 쿼리를 넣어서 사용하는 방법입니다. 이를 이용하면 복잡한 데이터 그룹핑 작업을 수행할 수 있습니다. 서브쿼리를 사용하여 데이터를 그룹핑하는 방법을 살펴보겠습니다.

서브쿼리를 이용한 그룹핑

보통의 경우, 우리는 GROUP BY 절을 사용하여 데이터를 그룹핑합니다. 하지만 때로는 서브쿼리를 사용하여 더 복잡한 그룹핑이 필요한 경우가 있습니다. 예를 들어, 특정 그룹의 데이터 행을 가져와서 다시 그룹핑하는 작업을 수행해야 할 때 서브쿼리가 유용합니다.

다음은 간단한 예제 코드입니다. 이 코드에서는 서브쿼리를 사용하여 특정 그룹의 데이터를 가져와서 다시 그룹핑하는 방법을 보여줍니다.

SELECT department, AVG(salary) as avg_salary
FROM 
    (SELECT department, employee_id, salary
     FROM employees
     WHERE hire_date > '01-JAN-2020'
    )
GROUP BY department;

위의 예제에서는 서브쿼리를 사용하여 hire_date가 2020년 이후인 employee의 department와 salary 정보를 가져왔습니다. 그 후에 이 결과를 department 별로 다시 그룹핑하여 각 부서의 평균 급여를 구했습니다.

이와 같이 서브쿼리를 사용하여 데이터를 중간 단계에서 가공하고, 그 결과를 다시 그룹핑하는 등의 복잡한 작업을 수행할 수 있습니다.

결론

서브쿼리를 사용하여 데이터를 그룹핑하는 방법을 살펴보았습니다. 서브쿼리를 잘 활용하면 더 복잡한 데이터 그룹핑 작업을 효율적으로 수행할 수 있습니다. 다양한 시나리오에서 서브쿼리를 활용하여 데이터를 그룹핑하는 방법을 익혀두면 유용할 것입니다.

참고 자료