MSSQL

MSSQL - 서브쿼리

깐까망 2024. 4. 15. 18:27
728x90
반응형
SMALL

▶서브쿼리란

하나의 쿼리문 안에 포함되어 있는 또 하나의 쿼리문을 말합니다.

서브 쿼리는 메인 쿼리가 서브 쿼리를 포함하는 종속적인 관계입니다.

여러 번의 쿼리를 수행해야만 얻을 수 있는 결과를 

하나의 중첩된 SQL 문장으로 간편하게 결과를 얻을 수 있게 해 줍니다.

쉽게 말해서 쿼리 문안에 쿼리문을 또 쓴다고 생각하면 됩니다.

※ Sub Query를 Inner Query라고도 합니다.

 

- 조회되는 컬럼으로 사용하는 방법

하나의 컬럼으로 검색하여 데이터를 뽑아 낼 수 있다. 

괄호로 묶어 사용하여 AS를 사용하여 이름을 넣어준다.

 

-- 조회 컬럼으로 사용 --
SELECT *,(SELECT dname FROM DEPT_EMP WHERE deptno = '1') dname FROM EMP

 

dname은 조건에 맞는 컬럼이 검색됩니다. deptno = '1'인 해당되는 컬럼을 뿌려지게 되는 것입니다.

 

- From에는 테이블 명이 와야 하지만 From에 테이블 대신에 서브 쿼리를 사용하면 서브 쿼리에서 조회된 값을 테이블 처럼 활용할 수 있습니다.

 

-- FROM 절에 사용할때 --
SELECT * FROM (SELECT * FROM DEPT_EMP) A

 

 

- where절의 서브쿼리는 컬럼을 *로 지정하여 검색을 할 수 없다

-- Where절의 서브쿼리 --
SELECT * FROM EMP WHERE deptno IN (SELECT deptno FROM EMP WHERE deptno = '1' AND empno = '20')

 

728x90
반응형
LIST