SQL Joins and Subqueries/Use a subquery in WHERE

Filter rows based on results from another query.

Section: Subqueries

Use a subquery in WHERE

sql
sql
SELECT *
FROM products
WHERE category_id IN (
  SELECT category_id
  FROM categories
  WHERE is_active = TRUE
);
Explanation

Subqueries are useful when one query determines the filter set for another.

Learn the surrounding workflow

Compare similar commands or jump into common fixes when this command is part of a bigger troubleshooting path.

Related commands

Same sheet · prioritizing Subqueries
Scalar subquery
Return a single value from a nested query.
OpenIn sheetsqlsame section
Correlated subquery
Reference outer query columns inside the subquery.
OpenIn sheetsqlsame section
Subquery in FROM
Use a derived table as a query source.
OpenIn sheetsqlsame section
Filter with EXISTS
Return rows when a related row exists.
OpenIn sheetsql1 tag match
Filter with NOT EXISTS
Return rows with no related matches.
OpenIn sheetsql1 tag match
Join to an aggregated subquery
Pre-aggregate a table and join the result.
OpenIn sheetsql1 tag match