Understanding EXPLAIN
Reading Query Plans
EXPLAIN shows how PostgreSQL plans to execute your query. EXPLAIN ANALYZE actually runs it and shows real timings.
EXPLAIN ANALYZE
SELECT * FROM orders WHERE customer_id = 42;
Key things to look for:
- Seq Scan — full table scan, often slow on large tables
- Index Scan — using an index, usually fast
- Hash Join / Nested Loop — join strategies