Q29: How do you analyze an SQL query execution plan using EXPLAIN?

Difficulty:AdvancedTopic:Diagnostics

The EXPLAIN (or EXPLAIN ANALYZE) command reveals the execution steps chosen by the database query optimizer.

Key Metrics to Analyze

  • Scan Types: Seq Scan / Table Scan (slow) vs Index Seek / Index Scan (fast).
  • Join Algorithms: Nested Loop (good for small sets), Hash Join (good for large unsorted sets), Merge Join (efficient for pre-sorted sets).
  • Cost Estimates: Startup and total cost measures calculated by database statistics engines.
  • Actual Time / Rows: Real execution timings provided by EXPLAIN ANALYZE.
Key Takeaways
  • EXPLAIN ANALYZE executes the target query and reports real runtime performance statistics.
  • Look for sequential scans on large tables to identify missing index opportunities.