explain.depesz.com

PostgreSQL's explain analyze made readable

Result: ln0T

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

Limit (cost=0.85..22,281.54 rows=20 width=2,555) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.85..42,946,026.85 rows=38,550 width=2,555) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..1,933,990.63 rows=38,550 width=1,879) (actual rows= loops=)

  • Join Filter: (decoration_type.id = flat.decoration_type_id)
4. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..1,920,643.24 rows=38,550 width=1,760) (actual rows= loops=)

  • Join Filter: (balcony_type.id = flat.balcony_type_id)
5. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..1,874,111.35 rows=38,550 width=1,740) (actual rows= loops=)

  • Join Filter: (flat_type.id = flat.type_id)
6. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..1,873,037.63 rows=38,550 width=1,422) (actual rows= loops=)

  • Join Filter: (status.id = flat.deal_status_id)
7. 0.000 0.000 ↓ 0.0

Index Scan using flat_price_index on flat (cost=0.42..1,870,279.67 rows=38,550 width=1,104) (actual rows= loops=)

  • Filter: (actual AND (address_hierarchy_ids ~@| '{be86ee14-44d2-44d5-b1e4-4353fe3f4945,cb70975bd-a7bd-487f-babf-2fe22604eb3f}'::text[]) AND (category_type = 1))
8. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..1.07 rows=5 width=334) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Seq Scan on status (cost=0.00..1.05 rows=5 width=334) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..1.03 rows=2 width=334) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Seq Scan on flat_type (cost=0.00..1.02 rows=2 width=334) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..3.21 rows=81 width=36) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Seq Scan on balcony_type (cost=0.00..2.81 rows=81 width=36) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..1.36 rows=24 width=135) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Seq Scan on decoration_type (cost=0.00..1.24 rows=24 width=135) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Index Scan using semantic_url_new_flat_type_idx on semantic_url_new (cost=0.42..1,017.84 rows=1,998 width=1,515) (actual rows= loops=)

  • Index Cond: (flat.id = (split_part((request_url)::text, 'flats/'::text, 2))::uuid)
17.          

SubPlan (for Nested Loop Left Join)

18. 0.000 0.000 ↓ 0.0

Index Scan using building_id_idx on building (cost=0.29..8.30 rows=1 width=13) (actual rows= loops=)

  • Index Cond: (id = flat.building_id)
19. 0.000 0.000 ↓ 0.0

Index Scan using document_advantage_id_idx on document_advantage (cost=0.42..8.44 rows=1 width=745) (actual rows= loops=)

  • Index Cond: (id = flat.document_advantage_id)
20. 0.000 0.000 ↓ 0.0

Index Scan using building_id_idx on building b (cost=0.29..8.55 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = flat.building_id)