explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Za1p

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Hash Join (cost=538,225.46..695,372.35 rows=738 width=4) (actual rows= loops=)

  • Hash Cond: (collection.id = cs.collection_id)
2. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on collections collection (cost=12,869.58..169,995.23 rows=4,966 width=4) (actual rows= loops=)

  • Recheck Cond: (designer_id = 135647)
  • Filter: ((NOT is_custom) AND ((visible_to_all_matches = 1) OR (alternatives: SubPlan 1 or hashed SubPlan 2)))
3. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on collections_designer_id_idx (cost=0.00..12,868.34 rows=13,839 width=0) (actual rows= loops=)

  • Index Cond: (designer_id = 135647)
4.          

SubPlan (forBitmap Heap Scan)

5. 0.000 0.000 ↓ 0.0

Index Only Scan using accounts_collections_pkey on accounts_collections ac (cost=0.43..8.45 rows=1 width=0) (actual rows= loops=)

  • Index Cond: ((collection_id = collection.id) AND (account_id = 282844))
6. 0.000 0.000 ↓ 0.0

Index Scan using accounts_collections_account_id_idx on accounts_collections ac_1 (cost=0.43..215.87 rows=58 width=4) (actual rows= loops=)

  • Index Cond: (account_id = 282844)
7. 0.000 0.000 ↓ 0.0

Hash (cost=524,634.72..524,634.72 rows=57,693 width=4) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

HashAggregate (cost=524,057.79..524,634.72 rows=57,693 width=4) (actual rows= loops=)

  • Group Key: cs.collection_id
9. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1,001.12..512,787.04 rows=4,508,297 width=4) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Gather (cost=1,000.56..232,370.93 rows=260,907 width=4) (actual rows= loops=)

  • Workers Planned: 2
11. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..205,280.23 rows=108,711 width=4) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on accounts_price_types apt (cost=0.00..41,709.84 rows=25 width=4) (actual rows= loops=)

  • Filter: (account_id = 282844)
13. 0.000 0.000 ↓ 0.0

Index Scan using style_prices_price_type_id_idx on style_prices sp (cost=0.56..6,504.77 rows=3,805 width=8) (actual rows= loops=)

  • Index Cond: (price_type_id = apt.price_type_id)
14. 0.000 0.000 ↓ 0.0

Index Scan using collections_styles_style_id_idx on collections_styles cs (cost=0.56..0.90 rows=17 width=8) (actual rows= loops=)

  • Index Cond: (style_id = sp.style_id)