[데이터베이스] 서브쿼리

이다혜·2023년 11월 1일
0

데이터베이스

목록 보기
4/9

다른 쿼리 안에 포함된 쿼리로, 주로 외부 쿼리의 결과에 기반하여 내부 쿼리를 실행하고 그 결과를 반환하는데 사용된다.

1. WHERE절에서 서브쿼리 사용

예시) 서브쿼리를 사용하여 IT 부서의 직원 목록 조회

SELECT emp.name
FROM emp
WHERE dept.id = (
				   SELECT dept.id
                   FROM dept
                   WHERE dept.name="IT"
                );
                

예시) 서브쿼리를 사용하여 평균 급여보다 높은 급여를 받는 직원 목록 조회

SELECT emp.name
FROM emp
WHERE emp.salary > (
					  SELECT AVG(emp.salary)
                      FROM emp
                    );

2. FROM절에서 서브쿼리 사용

예시) 부서별, 부서명, 사원리스트, 평균연봉, 최고연봉, 최소연봉, 사원수

SELECT *
FROM (
	SELECT D.name, GROUP_CONCAT(E.name), AVG(E.salary)
	FROM emp AS E
	INNER JOIN dept AS D
	ON E.deptId = D.id
	GROUP BY D.id
) AS D
WHERE D.평균연봉 >= 5000;

0개의 댓글