SQL Subqueries
Overview
Subqueries are queries nested inside other SQL queries. They can appear in WHERE, FROM, SELECT clauses, enabling complex data retrieval logic to be completed in a single SQL statement.
WHERE Subqueries
IN Subquery
IN checks if a value exists in the result set returned by the subquery:
NOT IN Subquery
NOT IN excludes values in the subquery result:
EXISTS Subquery
EXISTS checks if the subquery returns at least one row:
NOT EXISTS Subquery
NOT EXISTS checks if the subquery returns no data:
FROM Subqueries (Derived Tables)
Subqueries can be placed in the FROM clause as temporary tables:
SELECT Subqueries (Scalar Subqueries)
Subqueries can be placed in the SELECT clause as computed columns:
Correlated Subqueries
Correlated subqueries reference columns from the outer query and are re-executed for each row:
Summary
Subquery key points:
WHEREclause can useIN,EXISTSoperators- Subqueries in
FROMclause are used as derived tables - Scalar subqueries in
SELECTclause are used for computed columns - Correlated subqueries reference outer query columns