What is a Table Subquery?
A table subquery returns multiple rows and columns - like a temporary table.
Simple rule: Put a query in FROM clause, give it a name!
How Table Subquery Works
Basic Syntax
SELECT *
FROM (
SELECT columns FROM table
) AS temp_name;Important: Must give alias name (AS temp_name)!
Example 1: Filter Grouped Data
SELECT *
FROM (
SELECT grade, COUNT(*) AS total
FROM students
GROUP BY grade
) AS grade_counts
WHERE total > 5;Step 1: Inner query groups by grade Step 2: Outer query filters groups with >5 students
Example 2: Top Performers
SELECT *
FROM (
SELECT name, score
FROM students
WHERE score > 90
) AS top_students;Table Subquery Rules
- Returns multiple rows/columns - full result set
- Used in FROM clause - acts as temp table
- Must have alias - AS name required
Try It Below
Practice with pre-grouped data!
What Comes Next
Next: Nested Subqueries - queries inside queries inside queries!