explain.depesz.com

PostgreSQL's explain analyze made readable

Result: UjZT

Settings
# exclusive inclusive rows x rows loops node
1. 0.012 6,010.991 ↑ 1.0 25 1

Limit (cost=4.70..109,113.79 rows=25 width=16) (actual time=1,276.648..6,010.991 rows=25 loops=1)

2. 0.013 6,010.979 ↑ 24.2 25 1

Nested Loop (cost=4.70..2,644,809.09 rows=606 width=16) (actual time=1,276.648..6,010.979 rows=25 loops=1)

3. 0.027 6,010.941 ↑ 24.2 25 1

Nested Loop (cost=4.70..2,644,799.66 rows=606 width=24) (actual time=1,276.637..6,010.941 rows=25 loops=1)

4. 0.560 5,998.914 ↑ 28.0 25 1

Nested Loop (cost=4.27..2,644,329.91 rows=700 width=16) (actual time=1,276.191..5,998.914 rows=25 loops=1)

  • Join Filter: (pdt.id = p.definition_id)
  • Rows Removed by Join Filter: 7096
5. 0.046 5,997.979 ↑ 28.0 25 1

Nested Loop Left Join (cost=4.27..2,641,256.26 rows=700 width=24) (actual time=1,276.114..5,997.979 rows=25 loops=1)

6. 356.202 5,988.358 ↑ 28.0 25 1

Nested Loop Left Join (cost=3.84..2,640,823.03 rows=700 width=32) (actual time=1,275.608..5,988.358 rows=25 loops=1)

  • Filter: (f_unaccent(upper(concat(ad.street_name_french, ' ', ad.street_number_from, NULLIF((' - '::text || (ad.street_number_to)::text), ' - '::text), NULLIF((' / '::text || (ad.box_number)::text), ' / '::text)))) ~~ '%ROUGE%'::text)
  • Rows Removed by Filter: 54081
7. 3.081 3,954.870 ↑ 8.1 54,106 1

Nested Loop Left Join (cost=3.41..1,875,659.02 rows=437,806 width=48) (actual time=1.063..3,954.870 rows=54,106 loops=1)

8. 14.430 2,815.563 ↑ 8.1 54,106 1

Nested Loop Left Join (cost=2.13..1,105,021.64 rows=437,754 width=24) (actual time=0.806..2,815.563 rows=54,106 loops=1)

9. 47.520 2,747.027 ↑ 8.1 54,106 1

Nested Loop (cost=1.70..844,184.23 rows=437,754 width=32) (actual time=0.804..2,747.027 rows=54,106 loops=1)

10. 7.727 1,671.493 ↑ 8.1 54,106 1

Nested Loop (cost=1.27..583,232.55 rows=437,754 width=24) (actual time=0.560..1,671.493 rows=54,106 loops=1)

11. 5.585 798.070 ↑ 8.1 54,106 1

Nested Loop Left Join (cost=0.85..347,844.87 rows=437,754 width=24) (actual time=0.554..798.070 rows=54,106 loops=1)

12. 305.531 305.531 ↑ 8.1 54,106 1

Index Scan using case_reception_date_idx on case_t c (cost=0.42..124,947.57 rows=437,754 width=48) (actual time=0.323..305.531 rows=54,106 loops=1)

  • Filter: ((NOT deleted) AND (NOT a_new_version_exists) AND ((case_type)::text = 'URBANISM'::text))
  • Rows Removed by Filter: 4960
13. 486.954 486.954 ↑ 1.0 1 54,106

Index Scan using case_status_board_to_case_idx on case_status_board_t board (cost=0.42..0.50 rows=1 width=16) (actual time=0.008..0.009 rows=1 loops=54,106)

  • Index Cond: (c.id = case_id)
14. 865.696 865.696 ↑ 1.0 1 54,106

Index Scan using pk_configuration_t on configuration_t config (cost=0.42..0.53 rows=1 width=16) (actual time=0.016..0.016 rows=1 loops=54,106)

  • Index Cond: (id = c.configuration_id)
15. 1,028.014 1,028.014 ↑ 1.0 1 54,106

Index Scan using pk_phase_t on phase_t p (cost=0.43..0.59 rows=1 width=24) (actual time=0.019..0.019 rows=1 loops=54,106)

  • Index Cond: (id = config.current_phase_id)
16. 54.106 54.106 ↓ 0.0 0 54,106

Index Only Scan using pk_deadline_acm_t on deadline_acm_t d1 (cost=0.43..0.59 rows=1 width=8) (actual time=0.001..0.001 rows=0 loops=54,106)

  • Index Cond: (id = p.deadline_id)
  • Heap Fetches: 85
17. 54.106 1,136.226 ↑ 1.0 1 54,106

Nested Loop Left Join (cost=1.28..1.75 rows=1 width=32) (actual time=0.020..0.021 rows=1 loops=54,106)

18. 0.000 973.908 ↑ 1.0 1 54,106

Nested Loop Left Join (cost=0.85..1.13 rows=1 width=24) (actual time=0.018..0.018 rows=1 loops=54,106)

19. 486.954 486.954 ↑ 1.0 1 54,106

Index Scan using geolocation__case_idx on geolocation_t g (cost=0.42..0.51 rows=1 width=16) (actual time=0.009..0.009 rows=1 loops=54,106)

  • Index Cond: (case_id = c.id)
20. 486.954 486.954 ↓ 0.0 0 54,106

Index Scan using geolocation_address_context_geolocation_id_idx on geolocation_address_context_t gac_norm (cost=0.43..0.61 rows=1 width=16) (actual time=0.009..0.009 rows=0 loops=54,106)

  • Index Cond: (g.id = geolocation_id)
  • Filter: (is_principal AND ((context_type)::text = 'TARGET'::text))
  • Rows Removed by Filter: 2
21. 108.212 108.212 ↑ 1.0 1 54,106

Index Scan using geolocation_address_context_geolocation_id_idx on geolocation_address_context_t gac_desc (cost=0.43..0.61 rows=1 width=16) (actual time=0.001..0.002 rows=1 loops=54,106)

  • Index Cond: (g.id = geolocation_id)
  • Filter: (is_principal AND ((context_type)::text = 'DESCRIPTIVE_TARGET'::text))
  • Rows Removed by Filter: 1
22. 1,677.286 1,677.286 ↑ 1.0 1 54,106

Index Scan using pk_address_t on address_t ad (cost=0.43..1.47 rows=1 width=29) (actual time=0.031..0.031 rows=1 loops=54,106)

  • Index Cond: (id = COALESCE(gac_desc.address_id, gac_norm.address_id))
23. 9.575 9.575 ↑ 1.0 1 25

Index Scan using geolocation_localization_context_geolocation_id_idx on geolocation_localization_context_t glc (cost=0.43..0.61 rows=1 width=16) (actual time=0.382..0.383 rows=1 loops=25)

  • Index Cond: (g.id = geolocation_id)
  • Filter: ((context_type)::text = 'TARGET'::text)
  • Rows Removed by Filter: 1
24. 0.320 0.375 ↑ 1.0 285 25

Materialize (cost=0.00..8.38 rows=292 width=8) (actual time=0.001..0.015 rows=285 loops=25)

25. 0.055 0.055 ↓ 1.0 295 1

Seq Scan on phase_definition_t pdt (cost=0.00..6.92 rows=292 width=8) (actual time=0.010..0.055 rows=295 loops=1)

26. 12.000 12.000 ↑ 1.0 1 25

Index Only Scan using pk_case_actor_authority on case_actor_authority_t actors1_ (cost=0.43..0.66 rows=1 width=16) (actual time=0.479..0.480 rows=1 loops=25)

  • Index Cond: ((case_id = c.id) AND (authority_abstract_id = 20))
  • Heap Fetches: 25
27. 0.014 0.025 ↑ 1.0 1 25

Materialize (cost=0.00..1.85 rows=1 width=8) (actual time=0.001..0.001 rows=1 loops=25)

28. 0.011 0.011 ↑ 1.0 1 1

Seq Scan on authority_abstract_t abstractau2_ (cost=0.00..1.85 rows=1 width=8) (actual time=0.009..0.011 rows=1 loops=1)

  • Filter: (id = 20)
  • Rows Removed by Filter: 67
Planning time : 24.078 ms