1013 데이터베이스 정리_서브쿼리
* 서브쿼리 = 보조쿼리
서브쿼리가 메인쿼리보다 먼저 실행된다.
1. SELECT절에 오는 서브쿼리를 스칼라 서브쿼리라고 부른다.
예)
SELECT
count(*) AS "모든 사원 수",
(SELECT count(*) AS "사원 수"FROM emp WHERE job ="manager")
AS "manager 사원수"
FROM emp
2. FROM절에 오는 서브쿼리를 인라인 뷰(가상 테이블)이라고 부른다.
FROM절에 오는 서브쿼리는 WHERE절처럼 필터링할 때 사용한다.
select
e.deptno
from(select deptno from emp group by deptno having count(*)>4) as sub
inner join emp as e
on sub.deptno = e.deptno
3. where 절에 오는 서브쿼리를 중첩쿼리라고 부른다.
서브쿼리 중에서 사용률이 가장 낮다.
select * from emp where empno in -- 해당하는 값이 많을 때는 "=" 대신 in 사용
(select empno from emp where mgr is null)
댓글
댓글 쓰기