SQL
Sub Query
hyungminjeon
2024. 6. 3. 22:01
[서브쿼리란]
SQL 서브쿼리는 하나의 SQL 쿼리 내에 포함된 또 다른 쿼리이다. 서브쿼리는 주로 복잡한 쿼리에서 특정 데이터를 추출하기 위해 사용되며, 메인 쿼리의 일부로써 사용된다.서브쿼리는 SELECT, INSERT, UPDATE, DELETE 문에 사용되며, 다양한 방식으로 데이터를 처리하는데 유용하다.
[예제]
단일 행 서브쿼리 (Single-row subquery): 하나의 행을 반환하는 서브쿼리이다. 주로 WHERE 절에 사용되며, 단일 값과 비교할 때 유용하다.
SELECT name
FROM employees
WHERE department_id = (SELECT department_id
FROM departments
WHERE name = 'Sales');
다중 행 서브쿼리 (Multi-row subquery): 여러 행을 반환하는 서브쿼리이다. IN, ANY, ALL 연산자와 함께 사용된다.
SELECT name
FROM employees
WHERE department_id IN (SELECT department_id
FROM departments
WHERE location_id = 1700);
[정리 및 새롭게 알게 된 점]
서브쿼리는 쿼리를 더 구조적으로 만들고, 복잡한 데이터 검색을 더 효율적으로 할 수 있게 해준다. 각 서브쿼리는 독립적으로 실행되며, 메인 쿼리와 결합하여 보다 명확한 논리를 구성할 수 있다. 1)여러번의 연산을 수행해야 할 때, 2)조건문에 연산 결과를 사용해야 할 때, 3)조건에 Query 결과를 사용하고 싶을 때 서브쿼리를 사용하면 복잡한 계산을 나눠 논리적으로 이해하기 쉬운 Query를 작성할 수 있다.