explain.depesz.com

PostgreSQL's explain analyze made readable

Result: FDeO

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

Result (cost=1,734,175.82..27,119,560.60 rows=974,113 width=2,555) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Sort (cost=1,734,175.82..1,736,611.11 rows=974,113 width=1,911) (actual rows= loops=)

  • Sort Key: flat.price DESC
3. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=405,724.06..831,543.62 rows=974,113 width=1,911) (actual rows= loops=)

  • Hash Cond: (flat.decoration_type_id = decoration_type.id)
4. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=405,722.52..826,098.21 rows=974,113 width=3,271) (actual rows= loops=)

  • Hash Cond: (flat.balcony_type_id = balcony_type.id)
5. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=405,718.70..823,464.55 rows=974,113 width=3,251) (actual rows= loops=)

  • Hash Cond: (flat.type_id = flat_type.id)
6. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=405,717.65..818,653.08 rows=974,113 width=2,933) (actual rows= loops=)

  • Hash Cond: (flat.deal_status_id = status.id)
7. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=405,716.54..815,329.17 rows=974,113 width=2,615) (actual rows= loops=)

  • Hash Cond: ((split_part((semantic_url_new.request_url)::text, 'flats/'::text, 2))::uuid = flat.id)
8. 0.000 0.000 ↓ 0.0

Seq Scan on semantic_url_new (cost=0.00..106,264.64 rows=447,664 width=1,511) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Hash (cost=259,409.13..259,409.13 rows=974,113 width=1,104) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Seq Scan on flat (cost=0.00..259,409.13 rows=974,113 width=1,104) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Hash (cost=1.05..1.05 rows=5 width=334) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

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

13. 0.000 0.000 ↓ 0.0

Hash (cost=1.02..1.02 rows=2 width=334) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

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

15. 0.000 0.000 ↓ 0.0

Hash (cost=2.81..2.81 rows=81 width=36) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

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

17. 0.000 0.000 ↓ 0.0

Hash (cost=1.24..1.24 rows=24 width=135) (actual rows= loops=)

18. 0.000 0.000 ↓ 0.0

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

19.          

SubPlan (for Result)

20. 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)
21. 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)
22. 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)