SQL Practice Logo

SQLPractice Online

Subqueries in FROM Clause (Derived Tables): Mistakes

Module: Subqueries & CTEs

SELECT * FROM (SELECT * FROM employees)

SELECT * FROM (SELECT * FROM employees) AS e

Derived table must have alias.

Always alias derived tables

High

Missing alias

SELECT * FROM (SELECT * FROM orders WHERE total > 1000) AS o WHERE order_date > '2024-01-01'

SELECT * FROM (SELECT * FROM orders WHERE total > 1000 AND order_date > '2024-01-01') AS o

Filter early in derived table for better performance.

Put filters in derived table, not outer query

Medium

Filtering in outer query instead of derived table