explain.depesz.com

PostgreSQL's explain analyze made readable

Result: gmK7

Settings
# exclusive inclusive rows x rows loops node
1. 0.647 159.306 ↑ 2.3 109 1

Hash Left Join (cost=4,055.38..135,561.71 rows=251 width=598) (actual time=43.742..159.306 rows=109 loops=1)

  • Hash Cond: ((ec.id_prod_com = ec_1.id_prod_com) AND (tm.id_uf = fo.id_uf))
2. 0.078 53.556 ↑ 2.3 109 1

Hash Left Join (cost=3,928.38..5,852.61 rows=251 width=394) (actual time=43.580..53.556 rows=109 loops=1)

  • Hash Cond: (ep.id_pes_for = fr.id_pes)
3. 0.056 53.192 ↑ 2.3 109 1

Hash Left Join (cost=3,890.83..5,814.40 rows=251 width=371) (actual time=43.289..53.192 rows=109 loops=1)

  • Hash Cond: (ep.id_pes_fab = ff.id_pes)
4. 0.062 52.883 ↑ 2.3 109 1

Hash Left Join (cost=3,853.29..5,776.19 rows=251 width=348) (actual time=43.031..52.883 rows=109 loops=1)

  • Hash Cond: (ep.id_pes_lab = fl.id_pes)
5. 0.088 52.534 ↑ 2.3 109 1

Hash Left Join (cost=3,815.74..5,737.99 rows=251 width=325) (actual time=42.739..52.534 rows=109 loops=1)

  • Hash Cond: (ep.id_tipo_prod = tp.id_tipo_prod)
6. 0.083 52.412 ↑ 2.3 109 1

Hash Join (cost=3,814.40..5,735.80 rows=251 width=325) (actual time=42.686..52.412 rows=109 loops=1)

  • Hash Cond: (ep.id_marca = em.id_marca)
7. 0.094 52.289 ↑ 2.3 109 1

Hash Join (cost=3,813.36..5,732.70 rows=251 width=325) (actual time=42.636..52.289 rows=109 loops=1)

  • Hash Cond: (ep.id_dpto_d = ed.id_dpto)
8. 0.066 52.154 ↑ 2.3 109 1

Nested Loop (cost=3,811.95..5,730.48 rows=251 width=320) (actual time=42.585..52.154 rows=109 loops=1)

9. 0.023 0.023 ↑ 1.0 1 1

Seq Scan on tb_tipo_estoque tt (cost=0.00..1.04 rows=1 width=22) (actual time=0.022..0.023 rows=1 loops=1)

  • Filter: (id_tipo_estoque = 1)
  • Rows Removed by Filter: 2
10. 2.035 52.065 ↑ 2.3 109 1

Hash Join (cost=3,811.95..5,726.93 rows=251 width=302) (actual time=42.560..52.065 rows=109 loops=1)

  • Hash Cond: (ec.id_prod = ep.id_prod)
11. 7.575 7.575 ↑ 1.0 26,811 1

Seq Scan on eq_prod_com ec (cost=0.00..1,811.36 rows=26,962 width=28) (actual time=0.015..7.575 rows=26,811 loops=1)

  • Filter: ((id_tipo_situacao = 4) AND (id_emp = 1))
  • Rows Removed by Filter: 26813
12. 0.134 42.455 ↑ 2.3 109 1

Hash (cost=3,808.83..3,808.83 rows=250 width=290) (actual time=42.455..42.455 rows=109 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 28kB
13. 0.075 42.321 ↑ 2.3 109 1

Hash Join (cost=3,071.42..3,808.83 rows=250 width=290) (actual time=32.781..42.321 rows=109 loops=1)

  • Hash Cond: (ep.id_unid_v = un.id_unid)
14. 0.039 42.045 ↑ 2.3 109 1

Nested Loop (cost=3,069.93..3,806.55 rows=250 width=287) (actual time=32.575..42.045 rows=109 loops=1)

15. 0.004 0.038 ↑ 1.0 1 1

Nested Loop (cost=0.28..9.33 rows=1 width=8) (actual time=0.035..0.038 rows=1 loops=1)

16. 0.018 0.018 ↑ 1.0 1 1

Seq Scan on cg_emp cg (cost=0.00..1.02 rows=1 width=8) (actual time=0.015..0.018 rows=1 loops=1)

  • Filter: (id_emp = 1)
  • Rows Removed by Filter: 1
17. 0.016 0.016 ↑ 1.0 1 1

Index Scan using pk_tb_municipio on tb_municipio tm (cost=0.28..8.30 rows=1 width=8) (actual time=0.016..0.016 rows=1 loops=1)

  • Index Cond: (id_municipio = cg.id_municipio)
18. 2.873 41.968 ↑ 2.3 109 1

Hash Right Join (cost=3,069.64..3,794.72 rows=250 width=279) (actual time=32.537..41.968 rows=109 loops=1)

  • Hash Cond: ((pq.id_tipo_estoque = eq.id_tipo_estoque) AND (pq.id_prod = eq.id_prod))
19. 13.692 17.459 ↓ 1.0 26,338 1

HashAggregate (cost=828.55..1,091.31 rows=26,276 width=112) (actual time=10.827..17.459 rows=26,338 loops=1)

  • Group Key: pq.id_emp, pq.id_prod, pq.id_tipo_estoque
20. 3.767 3.767 ↑ 1.0 26,338 1

Seq Scan on eq_prod_qtde pq (cost=0.00..631.01 rows=26,338 width=12) (actual time=0.029..3.767 rows=26,338 loops=1)

  • Filter: ((id_emp = 1) AND (id_tipo_estoque = 1))
  • Rows Removed by Filter: 63
21. 0.068 21.636 ↑ 2.3 109 1

Hash (cost=2,237.34..2,237.34 rows=250 width=279) (actual time=21.636..21.636 rows=109 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 27kB
22. 0.635 21.568 ↑ 2.3 109 1

Merge Right Join (cost=1,838.77..2,237.34 rows=250 width=279) (actual time=19.555..21.568 rows=109 loops=1)

  • Merge Cond: (tn.id_ncm = ep.id_ncm)
23. 1.395 1.395 ↑ 1.3 9,439 1

Index Scan using idx_tb_ncm_id_ncm on tb_ncm tn (cost=0.29..491.90 rows=12,534 width=12) (actual time=0.018..1.395 rows=9,439 loops=1)

24. 0.105 19.538 ↑ 2.3 109 1

Sort (cost=1,838.49..1,839.11 rows=250 width=275) (actual time=19.532..19.538 rows=109 loops=1)

  • Sort Key: ep.id_ncm
  • Sort Method: quicksort Memory: 51kB
25. 1.960 19.433 ↑ 2.3 109 1

Hash Join (cost=1,128.37..1,828.53 rows=250 width=275) (actual time=13.366..19.433 rows=109 loops=1)

  • Hash Cond: (eq.id_prod = ep.id_prod)
26. 4.204 4.204 ↑ 1.0 26,338 1

Seq Scan on eq_prod_qtde eq (cost=0.00..631.01 rows=26,338 width=55) (actual time=0.026..4.204 rows=26,338 loops=1)

  • Filter: ((id_tipo_estoque = 1) AND (id_emp = 1))
  • Rows Removed by Filter: 63
27. 0.135 13.269 ↑ 2.3 110 1

Hash (cost=1,125.18..1,125.18 rows=255 width=220) (actual time=13.269..13.269 rows=110 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 24kB
28. 13.134 13.134 ↑ 2.3 110 1

Seq Scan on eq_prod ep (cost=0.00..1,125.18 rows=255 width=220) (actual time=0.514..13.134 rows=110 loops=1)

  • Filter: (((descricaor)::text ~~ '%ARROZ%'::text) AND ((especial)::text = 'NAO'::text))
  • Rows Removed by Filter: 26702
29. 0.020 0.201 ↑ 1.0 22 1

Hash (cost=1.22..1.22 rows=22 width=7) (actual time=0.201..0.201 rows=22 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
30. 0.181 0.181 ↑ 1.0 22 1

Seq Scan on tb_unid un (cost=0.00..1.22 rows=22 width=7) (actual time=0.171..0.181 rows=22 loops=1)

31. 0.009 0.041 ↑ 1.0 18 1

Hash (cost=1.18..1.18 rows=18 width=13) (actual time=0.041..0.041 rows=18 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
32. 0.032 0.032 ↑ 1.0 18 1

Seq Scan on eq_dpto ed (cost=0.00..1.18 rows=18 width=13) (actual time=0.026..0.032 rows=18 loops=1)

33. 0.010 0.040 ↑ 1.0 2 1

Hash (cost=1.02..1.02 rows=2 width=8) (actual time=0.040..0.040 rows=2 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
34. 0.030 0.030 ↑ 1.0 2 1

Seq Scan on eq_marca em (cost=0.00..1.02 rows=2 width=8) (actual time=0.029..0.030 rows=2 loops=1)

35. 0.008 0.034 ↑ 1.0 15 1

Hash (cost=1.15..1.15 rows=15 width=4) (actual time=0.034..0.034 rows=15 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
36. 0.026 0.026 ↑ 1.0 15 1

Seq Scan on tb_tipo_prod tp (cost=0.00..1.15 rows=15 width=4) (actual time=0.025..0.026 rows=15 loops=1)

37. 0.123 0.287 ↑ 1.0 691 1

Hash (cost=28.91..28.91 rows=691 width=31) (actual time=0.287..0.287 rows=691 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 52kB
38. 0.164 0.164 ↑ 1.0 691 1

Seq Scan on fn_pes fl (cost=0.00..28.91 rows=691 width=31) (actual time=0.011..0.164 rows=691 loops=1)

39. 0.119 0.253 ↑ 1.0 691 1

Hash (cost=28.91..28.91 rows=691 width=31) (actual time=0.253..0.253 rows=691 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 52kB
40. 0.134 0.134 ↑ 1.0 691 1

Seq Scan on fn_pes ff (cost=0.00..28.91 rows=691 width=31) (actual time=0.009..0.134 rows=691 loops=1)

41. 0.147 0.286 ↑ 1.0 691 1

Hash (cost=28.91..28.91 rows=691 width=31) (actual time=0.286..0.286 rows=691 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 52kB
42. 0.139 0.139 ↑ 1.0 691 1

Seq Scan on fn_pes fr (cost=0.00..28.91 rows=691 width=31) (actual time=0.009..0.139 rows=691 loops=1)

43. 0.000 0.011 ↓ 0.0 0 1

Hash (cost=126.98..126.98 rows=1 width=8) (actual time=0.011..0.011 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
44. 0.000 0.011 ↓ 0.0 0 1

Nested Loop (cost=103.69..126.98 rows=1 width=8) (actual time=0.011..0.011 rows=0 loops=1)

  • Join Filter: (gd.id_grade_trib_aliq = fd.id_grade_trib_aliq)
45. 0.000 0.011 ↓ 0.0 0 1

Nested Loop (cost=103.40..126.37 rows=1 width=24) (actual time=0.011..0.011 rows=0 loops=1)

  • Join Filter: (gd.id_grade_trib_aliq = fo.id_grade_trib_aliq)
46. 0.001 0.011 ↓ 0.0 0 1

Nested Loop (cost=103.11..125.52 rows=1 width=16) (actual time=0.010..0.011 rows=0 loops=1)

47. 0.000 0.010 ↓ 0.0 0 1

Nested Loop (cost=102.97..125.36 rows=1 width=24) (actual time=0.010..0.010 rows=0 loops=1)

  • Join Filter: (ga.id_grade_trib = ec_1.id_grade_trib)
48. 0.001 0.010 ↓ 0.0 0 1

Hash Join (cost=102.68..120.96 rows=1 width=20) (actual time=0.010..0.010 rows=0 loops=1)

  • Hash Cond: (el.id_simbologia = ga.id_simbologia)
49. 0.009 0.009 ↓ 0.0 0 1

Seq Scan on eq_prod_com_lista_preco el (cost=0.00..16.00 rows=600 width=8) (actual time=0.009..0.009 rows=0 loops=1)

50. 0.000 0.000 ↓ 0.0 0

Hash (cost=102.67..102.67 rows=1 width=20) (never executed)

51. 0.000 0.000 ↓ 0.0 0

Nested Loop (cost=75.70..102.67 rows=1 width=20) (never executed)

52. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=75.42..101.67 rows=1 width=8) (never executed)

  • Hash Cond: (gd.id_grade_trib_aliq = ge.id_grade_trib_aliq)
53. 0.000 0.000 ↓ 0.0 0

Seq Scan on fs_grade_trib_dcto gd (cost=0.00..25.43 rows=215 width=4) (never executed)

  • Filter: (id_tipo_dcto = 41)
54. 0.000 0.000 ↓ 0.0 0

Hash (cost=75.41..75.41 rows=1 width=4) (never executed)

55. 0.000 0.000 ↓ 0.0 0

Seq Scan on fs_grade_trib_entidade ge (cost=0.00..75.41 rows=1 width=4) (never executed)

  • Filter: (id_tipo_entidade = 3)
56. 0.000 0.000 ↓ 0.0 0

Index Scan using pk_fs_grade_trib_aliq on fs_grade_trib_aliq ga (cost=0.28..1.00 rows=1 width=12) (never executed)

  • Index Cond: (id_grade_trib_aliq = gd.id_grade_trib_aliq)
57. 0.000 0.000 ↓ 0.0 0

Index Scan using idx_eq_prod_com on eq_prod_com ec_1 (cost=0.29..4.39 rows=1 width=8) (never executed)

  • Index Cond: (id_prod_com = el.id_prod_com)
58. 0.000 0.000 ↓ 0.0 0

Index Only Scan using pk_fs_grade_trib on fs_grade_trib gt (cost=0.14..0.16 rows=1 width=4) (never executed)

  • Index Cond: (id_grade_trib = ec_1.id_grade_trib)
  • Heap Fetches: 0
59. 0.000 0.000 ↓ 0.0 0

Index Scan using fs_grade_trib_ufo_id_aliq on fs_grade_trib_ufo fo (cost=0.29..0.74 rows=9 width=8) (never executed)

  • Index Cond: (id_grade_trib_aliq = ga.id_grade_trib_aliq)
60. 0.000 0.000 ↓ 0.0 0

Index Scan using fs_grade_trib_ufd_id_aliq on fs_grade_trib_ufd fd (cost=0.29..0.60 rows=1 width=4) (never executed)

  • Index Cond: (id_grade_trib_aliq = fo.id_grade_trib_aliq)
  • Filter: (id_uf = 26)
61.          

SubPlan (forHash Left Join)

62. 0.000 0.000 ↓ 0.0 0

Seq Scan on eq_prod_pdc pd (cost=0.00..35.50 rows=10 width=0) (never executed)

  • Filter: (id_prod = ep.id_prod)
63. 0.008 0.008 ↓ 0.0 0 1

Seq Scan on eq_prod_pdc pd_1 (cost=0.00..30.40 rows=2,040 width=4) (actual time=0.008..0.008 rows=0 loops=1)

64. 0.000 0.000 ↓ 0.0 0

Seq Scan on eq_prod_apr pa (cost=0.00..17.50 rows=3 width=0) (never executed)

  • Filter: (id_prod = ep.id_prod)
65. 0.008 0.008 ↓ 0.0 0 1

Seq Scan on eq_prod_apr pa_1 (cost=0.00..16.00 rows=600 width=4) (actual time=0.008..0.008 rows=0 loops=1)

66. 0.109 1.962 ↑ 1.0 1 109

Aggregate (cost=3.63..3.64 rows=1 width=8) (actual time=0.018..0.018 rows=1 loops=109)

67. 1.069 1.853 ↓ 0.0 0 109

Nested Loop (cost=0.00..3.63 rows=1 width=4) (actual time=0.017..0.017 rows=0 loops=109)

  • Join Filter: (od.id_promo = eo.id_promo)
  • Rows Removed by Join Filter: 0
68. 0.763 0.763 ↓ 0.0 0 109

Seq Scan on eq_promo_prod od (cost=0.00..1.95 rows=1 width=8) (actual time=0.007..0.007 rows=0 loops=109)

  • Filter: (id_prod = ep.id_prod)
  • Rows Removed by Filter: 76
69. 0.021 0.021 ↑ 1.0 3 1

Seq Scan on eq_promo eo (cost=0.00..1.64 rows=3 width=4) (actual time=0.019..0.021 rows=3 loops=1)

  • Filter: (((LOCALTIMESTAMP)::date >= (dt_inicial)::date) AND ((LOCALTIMESTAMP)::date <= (dt_final)::date) AND ((LOCALTIMESTAMP)::time without time zone >= hr_inicial) AND ((LOCALTIMESTAMP)::time without time zone <= hr_final))
  • Rows Removed by Filter: 13
70. 0.763 103.114 ↑ 1.0 1 109

Limit (cost=0.00..503.23 rows=1 width=13) (actual time=0.946..0.946 rows=1 loops=109)

71. 102.351 102.351 ↑ 1.0 1 109

Seq Scan on eq_prod_ean pe (cost=0.00..503.23 rows=1 width=13) (actual time=0.939..0.939 rows=1 loops=109)

  • Filter: (id_prod = ep.id_prod)
  • Rows Removed by Filter: 13363