explain.depesz.com

PostgreSQL's explain analyze made readable

Result: kmKO

Settings
# exclusive inclusive rows x rows loops node
1. 0.001 15,662.181 ↑ 3.7 3 1

Limit (cost=1.15..18,100.37 rows=11 width=20) (actual time=0.200..15,662.181 rows=3 loops=1)

  • Output: p.id, p.date_heure, o.name
2. 0.000 15,662.180 ↑ 887.3 3 1

Nested Loop (cost=1.15..4,380,012.97 rows=2,662 width=20) (actual time=0.200..15,662.180 rows=3 loops=1)

  • Output: p.id, p.date_heure, o.name
3. 0.000 15,662.135 ↑ 887.3 3 1

Nested Loop (cost=0.87..4,379,971.39 rows=2,662 width=16) (actual time=0.158..15,662.135 rows=3 loops=1)

  • Output: p.id, p.date_heure, rel.is_presse_cycle_id
4. 1,711.647 1,711.647 ↑ 1.0 8,098,858 1

Index Scan Backward using is_presse_cycle_date_heure_index on public.is_presse_cycle p (cost=0.43..286,009.96 rows=8,098,902 width=12) (actual time=0.027..1,711.647 rows=8,098,858 loops=1)

  • Output: p.id, p.create_uid, p.create_date, p.write_uid, p.date_heure, p.write_date, p.presse_id
5. 16,197.716 16,197.716 ↓ 0.0 0 8,098,858

Index Only Scan using is_presse_cycle_of_rel_is_of_id_is_presse_cycle_id_key on public.is_presse_cycle_of_rel rel (cost=0.43..0.50 rows=1 width=8) (actual time=0.002..0.002 rows=0 loops=8,098,858)

  • Output: rel.is_of_id, rel.is_presse_cycle_id
  • Index Cond: ((rel.is_of_id = p.id) AND (rel.is_presse_cycle_id = 8774))
  • Heap Fetches: 3
6. 0.010 0.045 ↑ 1.0 1 3

Materialize (cost=0.28..8.31 rows=1 width=12) (actual time=0.014..0.015 rows=1 loops=3)

  • Output: o.name, o.id
7. 0.035 0.035 ↑ 1.0 1 1

Index Scan using is_of_pkey on public.is_of o (cost=0.28..8.30 rows=1 width=12) (actual time=0.035..0.035 rows=1 loops=1)

  • Output: o.name, o.id
  • Index Cond: (o.id = 8774)