explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 4Qpx : Optimization for: Optimization for: plan #n2L3; plan #GZUh

Settings

Optimization path:

Optimization(s) for this plan:

# exclusive inclusive rows x rows loops node
1. 80.322 16,498.481 ↑ 1.0 2,514 1

Hash Left Join (cost=946.64..3,527,378.34 rows=2,528 width=377) (actual time=61.886..16,498.481 rows=2,514 loops=1)

  • Hash Cond: (barrio.cod_city = city.id)
2. 15.680 146.493 ↑ 1.0 2,514 1

Hash Left Join (cost=931.03..1,263.08 rows=2,528 width=334) (actual time=56.049..146.493 rows=2,514 loops=1)

  • Hash Cond: (ubicacion.id_barrio = barrio.id_barrio)
3. 18.253 126.592 ↑ 1.0 2,514 1

Hash Left Join (cost=872.53..1,166.66 rows=2,528 width=320) (actual time=51.790..126.592 rows=2,514 loops=1)

  • Hash Cond: (planificacion.id_ubicacion = ubicacion.id_ubicacion)
4. 44.225 100.703 ↑ 1.0 2,514 1

Hash Join (cost=746.17..1,016.13 rows=2,528 width=233) (actual time=44.116..100.703 rows=2,514 loops=1)

  • Hash Cond: (periodo.id_planificacion = planificacion.id_planificacion)
5. 12.473 12.473 ↑ 1.0 9,912 1

Seq Scan on periodo (cost=0.00..195.12 rows=9,912 width=36) (actual time=0.007..12.473 rows=9,912 loops=1)

6. 4.822 44.005 ↑ 1.0 2,514 1

Hash (cost=714.57..714.57 rows=2,528 width=201) (actual time=44.005..44.005 rows=2,514 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 438kB
7. 4.843 39.183 ↑ 1.0 2,514 1

Hash Join (cost=68.89..714.57 rows=2,528 width=201) (actual time=6.025..39.183 rows=2,514 loops=1)

  • Hash Cond: (planificacion.id_unidad_operativa = unidad_operativa.id_unidad_operativa)
8. 4.401 34.065 ↑ 1.0 2,514 1

Nested Loop (cost=64.75..675.67 rows=2,528 width=185) (actual time=5.726..34.065 rows=2,514 loops=1)

9. 0.010 0.010 ↑ 1.0 1 1

Seq Scan on sub_estado (cost=0.00..1.04 rows=1 width=4) (actual time=0.007..0.010 rows=1 loops=1)

  • Filter: (id_subestado = 2)
  • Rows Removed by Filter: 2
10. 5.478 29.654 ↑ 1.0 2,514 1

Hash Join (cost=64.75..649.35 rows=2,528 width=189) (actual time=5.713..29.654 rows=2,514 loops=1)

  • Hash Cond: (planificacion.id_estado = estado_planificacion.id_estado)
11. 5.833 24.163 ↑ 1.0 2,514 1

Hash Join (cost=63.66..613.50 rows=2,528 width=193) (actual time=5.676..24.163 rows=2,514 loops=1)

  • Hash Cond: (planificacion.id_especialiadad = especialidades.id_especialidades)
12. 4.747 12.734 ↑ 1.0 2,517 1

Hash Join (cost=1.04..516.12 rows=2,531 width=51) (actual time=0.044..12.734 rows=2,517 loops=1)

  • Hash Cond: (planificacion.id_modalidad = modalidad.id_modalidad)
13. 7.977 7.977 ↑ 1.0 2,527 1

Seq Scan on planificacion (cost=0.00..480.22 rows=2,544 width=44) (actual time=0.013..7.977 rows=2,527 loops=1)

  • Filter: ((id_subestado = 2) AND (id_tipo_insc = 1) AND ((id_estado = 2) OR (id_estado = 3)))
  • Rows Removed by Filter: 7385
14. 0.005 0.010 ↑ 1.0 2 1

Hash (cost=1.02..1.02 rows=2 width=15) (actual time=0.010..0.010 rows=2 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
15. 0.005 0.005 ↑ 1.0 2 1

Seq Scan on modalidad (cost=0.00..1.02 rows=2 width=15) (actual time=0.003..0.005 rows=2 loops=1)

16. 1.284 5.596 ↓ 1.0 885 1

Hash (cost=51.58..51.58 rows=883 width=150) (actual time=5.596..5.596 rows=885 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 112kB
17. 2.971 4.312 ↓ 1.0 885 1

Hash Join (cost=4.61..51.58 rows=883 width=150) (actual time=0.324..4.312 rows=885 loops=1)

  • Hash Cond: (especialidades.id_area = areas.id_areas)
18. 1.048 1.048 ↓ 1.0 885 1

Seq Scan on especialidades (cost=0.00..34.83 rows=883 width=116) (actual time=0.009..1.048 rows=885 loops=1)

19. 0.068 0.293 ↑ 1.0 57 1

Hash (cost=3.89..3.89 rows=57 width=42) (actual time=0.293..0.293 rows=57 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 5kB
20. 0.124 0.225 ↑ 1.0 57 1

Hash Join (cost=1.54..3.89 rows=57 width=42) (actual time=0.082..0.225 rows=57 loops=1)

  • Hash Cond: (areas.id_familia_profesional = programas_formacion_familias.id_prog_formacion)
21. 0.047 0.047 ↑ 1.0 57 1

Seq Scan on areas (cost=0.00..1.57 rows=57 width=25) (actual time=0.004..0.047 rows=57 loops=1)

22. 0.030 0.054 ↑ 1.0 24 1

Hash (cost=1.24..1.24 rows=24 width=29) (actual time=0.054..0.054 rows=24 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
23. 0.024 0.024 ↑ 1.0 24 1

Seq Scan on programas_formacion_familias (cost=0.00..1.24 rows=24 width=29) (actual time=0.003..0.024 rows=24 loops=1)

24. 0.005 0.013 ↑ 1.0 4 1

Hash (cost=1.04..1.04 rows=4 width=4) (actual time=0.013..0.013 rows=4 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
25. 0.008 0.008 ↑ 1.0 4 1

Seq Scan on estado_planificacion (cost=0.00..1.04 rows=4 width=4) (actual time=0.004..0.008 rows=4 loops=1)

26. 0.175 0.275 ↑ 1.0 95 1

Hash (cost=2.95..2.95 rows=95 width=22) (actual time=0.275..0.275 rows=95 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 6kB
27. 0.100 0.100 ↑ 1.0 95 1

Seq Scan on unidad_operativa (cost=0.00..2.95 rows=95 width=22) (actual time=0.005..0.100 rows=95 loops=1)

28. 4.011 7.636 ↓ 1.0 2,995 1

Hash (cost=88.94..88.94 rows=2,994 width=95) (actual time=7.636..7.636 rows=2,995 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 379kB
29. 3.625 3.625 ↓ 1.0 2,995 1

Seq Scan on ubicacion (cost=0.00..88.94 rows=2,994 width=95) (actual time=0.007..3.625 rows=2,995 loops=1)

30. 2.260 4.221 ↓ 1.0 2,050 1

Hash (cost=33.22..33.22 rows=2,022 width=20) (actual time=4.221..4.221 rows=2,050 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 107kB
31. 1.961 1.961 ↓ 1.0 2,050 1

Seq Scan on barrio (cost=0.00..33.22 rows=2,022 width=20) (actual time=0.007..1.961 rows=2,050 loops=1)

32. 0.285 1.058 ↑ 1.0 254 1

Hash (cost=12.44..12.44 rows=254 width=51) (actual time=1.058..1.058 rows=254 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 21kB
33. 0.507 0.773 ↑ 1.0 254 1

Hash Left Join (cost=1.41..12.44 rows=254 width=51) (actual time=0.078..0.773 rows=254 loops=1)

  • Hash Cond: (city.distrito_id = distritos.id)
34. 0.219 0.219 ↑ 1.0 254 1

Seq Scan on city (cost=0.00..7.54 rows=254 width=48) (actual time=0.006..0.219 rows=254 loops=1)

35. 0.023 0.047 ↑ 1.0 18 1

Hash (cost=1.18..1.18 rows=18 width=19) (actual time=0.047..0.047 rows=18 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
36. 0.024 0.024 ↑ 1.0 18 1

Seq Scan on distritos (cost=0.00..1.18 rows=18 width=19) (actual time=0.005..0.024 rows=18 loops=1)

37.          

SubPlan (forHash Left Join)

38. 90.504 16,270.608 ↑ 1.0 1 2,514

Aggregate (cost=1,394.78..1,394.79 rows=1 width=8) (actual time=6.471..6.472 rows=1 loops=2,514)

39. 16,180.104 16,180.104 ↑ 1.6 16 2,514

Index Scan using inscripcion_alumno_id_alumno_id_planificacion_idx on inscripcion_alumno insxx (cost=0.42..1,394.72 rows=25 width=8) (actual time=2.611..6.436 rows=16 loops=2,514)

  • Index Cond: (id_planificacion = planificacion.id_planificacion)
  • Filter: (estado_inscripcion = 1)
  • Rows Removed by Filter: 8