1
SQLAdvanced#performance
EXPLAIN shows the plan the optimizer intends to use with estimated costs. EXPLAIN ANALYZE actually runs the query and reports real row counts and timings, exposing bad estimates.
EXPLAIN ANALYZE SELECT * FROM orders WHERE customer_id = 42; -- compare 'rows=1000 estimated' vs 'actual rows=90000'