explain.depesz.com

PostgreSQL's explain analyze made readable

Result: c8sr

Settings
# exclusive inclusive rows x rows loops node
1. 0.010 6,674.584 ↑ 1.0 25 1

Limit (cost=4.70..109,453.03 rows=25 width=16) (actual time=1,364.940..6,674.584 rows=25 loops=1)

2. 0.039 6,674.574 ↑ 24.2 25 1

Nested Loop (cost=4.70..2,653,032.19 rows=606 width=16) (actual time=1,364.940..6,674.574 rows=25 loops=1)

3. 0.042 6,674.485 ↑ 24.2 25 1

Nested Loop (cost=4.70..2,653,022.76 rows=606 width=24) (actual time=1,364.907..6,674.485 rows=25 loops=1)

4. 0.627 6,656.943 ↑ 28.0 25 1

Nested Loop (cost=4.27..2,652,553.02 rows=700 width=16) (actual time=1,364.223..6,656.943 rows=25 loops=1)

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

Nested Loop Left Join (cost=4.27..2,649,479.37 rows=700 width=24) (actual time=1,364.157..6,655.841 rows=25 loops=1)

6. 338.049 6,645.451 ↑ 28.0 25 1

Nested Loop Left Join (cost=3.84..2,649,046.13 rows=700 width=32) (actual time=1,363.704..6,645.451 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. 12.127 4,413.692 ↑ 8.1 54,106 1

Nested Loop Left Join (cost=3.41..1,883,882.12 rows=437,806 width=48) (actual time=1.471..4,413.692 rows=54,106 loops=1)

8. 14.095 3,103.021 ↑ 8.1 54,106 1

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

9. 42.579 3,034.820 ↑ 8.1 54,106 1

Nested Loop (cost=1.70..844,184.23 rows=437,754 width=32) (actual time=0.645..3,034.820 rows=54,106 loops=1)

10. 7.917 1,747.803 ↑ 8.1 54,106 1

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

11. 0.507 820.084 ↑ 8.1 54,106 1

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

12. 332.623 332.623 ↑ 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.342..332.623 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. 919.802 919.802 ↑ 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.017..0.017 rows=1 loops=54,106)

  • Index Cond: (id = c.configuration_id)
15. 1,244.438 1,244.438 ↑ 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.023..0.023 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,298.544 ↑ 1.0 1 54,106

Nested Loop Left Join (cost=1.28..1.77 rows=1 width=32) (actual time=0.023..0.024 rows=1 loops=54,106)

18. 54.106 1,136.226 ↑ 1.0 1 54,106

Nested Loop Left Join (cost=0.85..1.14 rows=1 width=24) (actual time=0.021..0.021 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. 595.166 595.166 ↓ 0.0 0 54,106

Index Scan using geolocation_address_pk on geolocation_address_context_t gac_norm (cost=0.43..0.62 rows=1 width=16) (actual time=0.011..0.011 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_pk on geolocation_address_context_t gac_desc (cost=0.43..0.62 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,893.710 1,893.710 ↑ 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.035..0.035 rows=1 loops=54,106)

  • Index Cond: (id = COALESCE(gac_desc.address_id, gac_norm.address_id))
23. 10.350 10.350 ↑ 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.412..0.414 rows=1 loops=25)

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

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

25. 0.079 0.079 ↓ 1.0 295 1

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

26. 17.500 17.500 ↑ 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.699..0.700 rows=1 loops=25)

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

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

28. 0.029 0.029 ↑ 1.0 1 1

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

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