explain.depesz.com

PostgreSQL's explain analyze made readable

Result: ltCT

Settings
# exclusive inclusive rows x rows loops node
1. 1.103 485.574 ↓ 40.0 40 1

Subquery Scan on r (cost=2,211.72..2,777.96 rows=1 width=1,090) (actual time=337.877..485.574 rows=40 loops=1)

2. 0.087 332.871 ↓ 40.0 40 1

Limit (cost=2,211.72..2,211.77 rows=1 width=807) (actual time=332.682..332.871 rows=40 loops=1)

3. 7.308 332.784 ↓ 9.6 240 1

WindowAgg (cost=2,210.41..2,211.72 rows=25 width=807) (actual time=332.465..332.784 rows=240 loops=1)

4. 7.480 325.476 ↓ 267.2 6,679 1

Group (cost=2,210.41..2,211.41 rows=25 width=758) (actual time=315.716..325.476 rows=6,679 loops=1)

  • Group Key: trp."trpID", tpe."tpeID", tcl."tclID", tos."tosID", tpc."tpcID", tcb."tcbID", tbc."tbcID", tba."tbaID", trec."trecID", ttb."ttbID", trem."tremID", tfu."tfuID", tpe_funcionario."tpeID", tct."tctID", tlsos."tlsosSituacao
5. 13.050 317.996 ↓ 267.2 6,679 1

Sort (cost=2,210.41..2,210.47 rows=25 width=758) (actual time=315.712..317.996 rows=6,679 loops=1)

  • Sort Key: trp."trpID", tpe."tpeID", tcl."tclID", tos."tosID", tpc."tpcID", tcb."tcbID", tbc."tbcID", tba."tbaID", trec."trecID", ttb."ttbID", trem."tremID", tfu."tfuID", tpe_funcionario."tpeID", tct."tctID", tlsos."tlsosSituacao
  • Sort Method: quicksort Memory: 3622kB
6. 4.947 304.946 ↓ 267.2 6,679 1

Hash Left Join (cost=247.81..2,209.83 rows=25 width=758) (actual time=3.846..304.946 rows=6,679 loops=1)

  • Hash Cond: (tcfos."tcfosID" = tct."tcttcfosID")
7. 5.126 299.725 ↓ 267.2 6,679 1

Hash Left Join (cost=221.95..2,183.59 rows=25 width=740) (actual time=3.568..299.725 rows=6,679 loops=1)

  • Hash Cond: (tos."tosID" = tcfos."tcfostosID")
8. 8.789 294.389 ↓ 267.2 6,679 1

Nested Loop Left Join (cost=211.08..2,172.61 rows=25 width=736) (actual time=3.350..294.389 rows=6,679 loops=1)

9. 8.692 285.600 ↓ 267.2 6,679 1

Nested Loop Left Join (cost=210.80..2,164.54 rows=25 width=727) (actual time=3.348..285.600 rows=6,679 loops=1)

10. 14.331 276.908 ↓ 267.2 6,679 1

Nested Loop Left Join (cost=210.67..2,160.37 rows=25 width=695) (actual time=3.347..276.908 rows=6,679 loops=1)

  • Join Filter: (tba."tbaID" = tbc."tbctbaID")
  • Rows Removed by Join Filter: 20494
11. 8.233 255.898 ↓ 267.2 6,679 1

Nested Loop Left Join (cost=210.67..2,157.82 rows=25 width=691) (actual time=3.339..255.898 rows=6,679 loops=1)

  • Join Filter: (tbc."tbcID" = tcb."tcbtbcID")
  • Rows Removed by Join Filter: 7136
12. 7.304 240.986 ↓ 267.2 6,679 1

Nested Loop Left Join (cost=210.67..2,156.05 rows=25 width=655) (actual time=3.332..240.986 rows=6,679 loops=1)

13. 7.689 220.324 ↓ 267.2 6,679 1

Nested Loop (cost=210.53..2,151.94 rows=25 width=475) (actual time=3.324..220.324 rows=6,679 loops=1)

14. 5.839 125.808 ↓ 109.5 6,679 1

Nested Loop (cost=210.25..2,083.28 rows=61 width=437) (actual time=3.264..125.808 rows=6,679 loops=1)

15. 3.957 89.189 ↓ 60.0 3,420 1

Nested Loop (cost=209.96..1,966.83 rows=57 width=143) (actual time=3.206..89.189 rows=3,420 loops=1)

16. 3.428 78.392 ↓ 60.0 3,420 1

Nested Loop Left Join (cost=209.68..1,946.86 rows=57 width=139) (actual time=3.199..78.392 rows=3,420 loops=1)

17. 3.007 68.124 ↓ 60.0 3,420 1

Nested Loop Left Join (cost=209.39..1,719.24 rows=57 width=119) (actual time=3.195..68.124 rows=3,420 loops=1)

18. 5.132 58.277 ↓ 60.0 3,420 1

Nested Loop Left Join (cost=209.12..1,701.63 rows=57 width=115) (actual time=3.191..58.277 rows=3,420 loops=1)

19. 4.510 46.305 ↓ 60.0 3,420 1

Nested Loop Left Join (cost=208.83..1,642.41 rows=57 width=81) (actual time=3.187..46.305 rows=3,420 loops=1)

20. 3.785 34.955 ↓ 60.0 3,420 1

Hash Join (cost=208.55..1,613.52 rows=57 width=58) (actual time=3.180..34.955 rows=3,420 loops=1)

  • Hash Cond: (tlsos."tlsostosID" = trec."trectosID")
21. 5.145 28.047 ↓ 60.9 4,994 1

Subquery Scan on tlsos (cost=0.29..1,403.97 rows=82 width=8) (actual time=0.020..28.047 rows=4,994 loops=1)

  • Filter: (tlsos.rr = 1)
  • Rows Removed by Filter: 11378
22. 14.619 22.902 ↑ 1.0 16,372 1

WindowAgg (cost=0.29..1,198.93 rows=16,403 width=20) (actual time=0.016..22.902 rows=16,372 loops=1)

23. 8.283 8.283 ↑ 1.0 16,372 1

Index Scan using idx_tlsos_tlsostosdesc on "TabLogSituacaoOrdemServico" (cost=0.29..911.88 rows=16,403 width=12) (actual time=0.011..8.283 rows=16,372 loops=1)

24. 1.337 3.123 ↑ 1.0 3,420 1

Hash (cost=165.10..165.10 rows=3,453 width=54) (actual time=3.123..3.123 rows=3,420 loops=1)

  • Buckets: 4096 Batches: 1 Memory Usage: 317kB
25. 1.786 1.786 ↑ 1.0 3,437 1

Seq Scan on "TabReceita" trec (cost=0.00..165.10 rows=3,453 width=54) (actual time=0.009..1.786 rows=3,437 loops=1)

  • Filter: ("trectemID" = 1)
  • Rows Removed by Filter: 2910
26. 6.840 6.840 ↑ 1.0 1 3,420

Index Scan using "TabOrdemServico_tosID" on "TabOrdemServico" tos (cost=0.28..0.50 rows=1 width=27) (actual time=0.002..0.002 rows=1 loops=3,420)

  • Index Cond: ("tosID" = trec."trectosID")
27. 6.840 6.840 ↑ 1.0 1 3,420

Index Scan using "TabPropostaComercial_tpcID" on "TabPropostaComercial" tpc (cost=0.28..1.03 rows=1 width=38) (actual time=0.002..0.002 rows=1 loops=3,420)

  • Index Cond: ("tpcID" = tos."tostpcID")
28. 6.840 6.840 ↑ 1.0 1 3,420

Index Scan using "TabFuncionario_tfuID" on "TabFuncionario" tfu (cost=0.27..0.30 rows=1 width=8) (actual time=0.001..0.002 rows=1 loops=3,420)

  • Index Cond: ("tfuID" = tpc."tpctfuID")
29. 6.840 6.840 ↑ 1.0 1 3,420

Index Scan using "TabPessoaID" on "TabPessoa" tpe_funcionario (cost=0.29..3.98 rows=1 width=24) (actual time=0.002..0.002 rows=1 loops=3,420)

  • Index Cond: ("tpeID" = tfu."tfutpeID")
30. 6.840 6.840 ↑ 1.0 1 3,420

Index Scan using "TabCliente_tclID" on "TabCliente" tcl (cost=0.28..0.34 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=3,420)

  • Index Cond: ("tclID" = trec."trectclID")
31. 30.780 30.780 ↓ 2.0 2 3,420

Index Scan using idx_trp_trecid_trpsubstituida on "TabReceitaParcela" trp (cost=0.29..2.03 rows=1 width=294) (actual time=0.006..0.009 rows=2 loops=3,420)

  • Index Cond: (("trptrecID" = trec."trecID") AND ("trpSubstituida" = false))
  • Filter: ((NOT "trpBaixada") AND (NOT "trpSubstituida") AND (NOT "trpPago") AND (NOT "trpEmitidoRemessa") AND ("trpIsExcluido" IS FALSE))
  • Rows Removed by Filter: 9
32. 86.827 86.827 ↑ 1.0 1 6,679

Index Scan using "TabPessoaID" on "TabPessoa" tpe (cost=0.29..1.12 rows=1 width=42) (actual time=0.013..0.013 rows=1 loops=6,679)

  • Index Cond: ("tpeID" = tcl."tcltpeID")
  • Filter: (("tpeCNPJCPF" ~~* '%%'::text) AND (proc_common_remove_acento("tpeNome") ~~* '%%'::text))
33. 13.358 13.358 ↑ 1.0 1 6,679

Index Scan using "TabContaBancaria_tcbID" on "TabContaBancaria" tcb (cost=0.14..0.15 rows=1 width=184) (actual time=0.001..0.002 rows=1 loops=6,679)

  • Index Cond: ("tcbID" = trp."trptcbID")
34. 6.675 6.679 ↑ 1.0 2 6,679

Materialize (cost=0.00..1.03 rows=2 width=40) (actual time=0.000..0.001 rows=2 loops=6,679)

35. 0.004 0.004 ↑ 1.0 2 1

Seq Scan on "TabBancoCarteira" tbc (cost=0.00..1.02 rows=2 width=40) (actual time=0.003..0.004 rows=2 loops=1)

36. 6.677 6.679 ↑ 1.0 4 6,679

Materialize (cost=0.00..1.06 rows=4 width=8) (actual time=0.000..0.001 rows=4 loops=6,679)

37. 0.002 0.002 ↑ 1.0 4 1

Seq Scan on "TabBanco" tba (cost=0.00..1.04 rows=4 width=8) (actual time=0.002..0.002 rows=4 loops=1)

38. 0.000 0.000 ↓ 0.0 0 6,679

Index Scan using "TabTipoBaixa_ttbID" on "TabTipoBaixa" ttb (cost=0.14..0.16 rows=1 width=36) (actual time=0.000..0.000 rows=0 loops=6,679)

  • Index Cond: ("ttbID" = trp."trpTipoBaixa")
39. 0.000 0.000 ↓ 0.0 0 6,679

Index Scan using "TabRemessa_tremID" on "TabRemessa" trem (cost=0.28..0.31 rows=1 width=13) (actual time=0.000..0.000 rows=0 loops=6,679)

  • Index Cond: ("tremID" = trp."trptremID")
40. 0.103 0.210 ↓ 1.1 324 1

Hash (cost=7.05..7.05 rows=305 width=8) (actual time=0.210..0.210 rows=324 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 21kB
41. 0.107 0.107 ↓ 1.1 324 1

Seq Scan on "TabCicloFaturamentoOS" tcfos (cost=0.00..7.05 rows=305 width=8) (actual time=0.004..0.107 rows=324 loops=1)

42. 0.103 0.274 ↓ 1.0 313 1

Hash (cost=22.05..22.05 rows=305 width=26) (actual time=0.273..0.274 rows=313 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 26kB
43. 0.171 0.171 ↓ 1.0 313 1

Seq Scan on "TabCycleTransaction" tct (cost=0.00..22.05 rows=305 width=26) (actual time=0.005..0.171 rows=313 loops=1)

44.          

SubPlan (for Subquery Scan)

45. 0.160 0.160 ↑ 1.0 1 40

Result (cost=0.00..0.01 rows=1 width=32) (actual time=0.004..0.004 rows=1 loops=40)

46. 0.040 0.040 ↑ 1.0 1 40

Result (cost=0.00..0.01 rows=1 width=32) (actual time=0.000..0.001 rows=1 loops=40)

47. 0.040 0.040 ↑ 1.0 1 40

Result (cost=0.00..0.01 rows=1 width=32) (actual time=0.001..0.001 rows=1 loops=40)

48. 0.280 1.080 ↑ 1.0 1 40

Aggregate (cost=30.30..30.31 rows=1 width=8) (actual time=0.027..0.027 rows=1 loops=40)

49. 0.800 0.800 ↓ 2.0 20 40

Index Scan using idx_trp_trecid_trpsubstituida on "TabReceitaParcela" (cost=0.29..30.27 rows=10 width=4) (actual time=0.007..0.020 rows=20 loops=40)

  • Index Cond: (("trptrecID" = r."trecID") AND ("trpSubstituida" = false))
  • Filter: (("trpSubstituida" IS FALSE) AND ("trptrpOriundaID" IS NULL) AND (NOT "trpIsExcluido"))
  • Rows Removed by Filter: 0
50. 0.040 0.040 ↑ 1.0 1 40

Result (cost=0.00..0.01 rows=1 width=32) (actual time=0.000..0.001 rows=1 loops=40)

51. 0.160 93.160 ↑ 1.0 1 40

Aggregate (cost=256.98..256.99 rows=1 width=8) (actual time=2.329..2.329 rows=1 loops=40)

52. 93.000 93.000 ↑ 1.0 1 40

Seq Scan on "TabClienteContato" tcc (cost=0.00..256.98 rows=1 width=4) (actual time=1.076..2.325 rows=1 loops=40)

  • Filter: (("tccTipoContato" @> '{8}'::integer[]) AND ("tcctclID" = r."tclID"))
  • Rows Removed by Filter: 10721
53. 0.040 0.040 ↑ 1.0 1 40

Result (cost=0.00..0.01 rows=1 width=32) (actual time=0.000..0.001 rows=1 loops=40)

54. 0.200 0.200 ↑ 1.0 1 40

Result (cost=0.00..0.02 rows=1 width=32) (actual time=0.005..0.005 rows=1 loops=40)

55. 0.120 0.120 ↑ 1.0 1 40

Result (cost=0.00..0.02 rows=1 width=32) (actual time=0.003..0.003 rows=1 loops=40)

56. 0.040 0.200 ↑ 1.0 1 40

Aggregate (cost=13.65..13.66 rows=1 width=8) (actual time=0.005..0.005 rows=1 loops=40)

57. 0.160 0.160 ↓ 0.0 0 40

Index Scan using idx_tcdcli_tcdclitrpid on "TabClienteDocumento" (cost=0.29..13.64 rows=3 width=4) (actual time=0.004..0.004 rows=0 loops=40)

  • Index Cond: ("tcdclitrpID" = r."trpID")
58. 1.360 1.360 ↑ 1,000.0 1 40

Function Scan on proc_comercial_gettipospagamento (cost=0.25..10.25 rows=1,000 width=32) (actual time=0.034..0.034 rows=1 loops=40)

59. 0.080 2.160 ↓ 0.0 0 40

Limit (cost=0.29..15.15 rows=1 width=4) (actual time=0.054..0.054 rows=0 loops=40)

60. 0.080 2.080 ↓ 0.0 0 40

Nested Loop (cost=0.29..15.15 rows=1 width=4) (actual time=0.052..0.052 rows=0 loops=40)

  • Join Filter: (tcd."tcdDocumento" = tdc."tdcdocID")
61. 1.840 1.840 ↓ 2.0 2 40

Seq Scan on "TabDocumentoCliente" tdc (cost=0.00..1.48 rows=1 width=4) (actual time=0.008..0.046 rows=2 loops=40)

  • Filter: ("tdcdocValor" ~~* 'comprovante_pagamento%'::text)
  • Rows Removed by Filter: 36
62. 0.160 0.160 ↓ 0.0 0 80

Index Scan using idx_tcdcli_tcdclitrpid on "TabClienteDocumento" tcd (cost=0.29..13.64 rows=3 width=8) (actual time=0.002..0.002 rows=0 loops=80)

  • Index Cond: ("tcdclitrpID" = r."trpID")
63. 0.040 1.600 ↓ 0.0 0 40

Limit (cost=0.29..15.15 rows=1 width=4) (actual time=0.040..0.040 rows=0 loops=40)

64. 0.120 1.560 ↓ 0.0 0 40

Nested Loop (cost=0.29..15.15 rows=1 width=4) (actual time=0.039..0.039 rows=0 loops=40)

  • Join Filter: (tcd_1."tcdDocumento" = tdc_1."tdcdocID")
65. 1.360 1.360 ↓ 2.0 2 40

Seq Scan on "TabDocumentoCliente" tdc_1 (cost=0.00..1.48 rows=1 width=4) (actual time=0.029..0.034 rows=2 loops=40)

  • Filter: ("tdcdocValor" ~~* 'nfse%'::text)
  • Rows Removed by Filter: 36
66. 0.080 0.080 ↓ 0.0 0 80

Index Scan using idx_tcdcli_tcdclitrpid on "TabClienteDocumento" tcd_1 (cost=0.29..13.64 rows=3 width=8) (actual time=0.001..0.001 rows=0 loops=80)

  • Index Cond: ("tcdclitrpID" = r."trpID")
67. 1.840 1.840 ↑ 1.0 1 40

Function Scan on proc_common_countbusinessdays (cost=0.25..0.26 rows=1 width=8) (actual time=0.046..0.046 rows=1 loops=40)

68. 18.240 18.240 ↑ 1,000.0 1 40

Function Scan on proc_common_getnetxbusinessdays (cost=0.25..10.25 rows=1,000 width=32) (actual time=0.455..0.456 rows=1 loops=40)

69. 0.160 29.040 ↑ 1.0 1 40

Aggregate (cost=203.78..203.79 rows=1 width=8) (actual time=0.725..0.726 rows=1 loops=40)

70. 0.120 28.880 ↑ 1.0 2 40

Nested Loop (cost=0.57..203.78 rows=2 width=4) (actual time=0.402..0.722 rows=2 loops=40)

71. 0.160 28.040 ↑ 1.0 1 40

Nested Loop (cost=0.28..173.41 rows=1 width=4) (actual time=0.391..0.701 rows=1 loops=40)

72. 27.720 27.720 ↑ 1.0 1 40

Seq Scan on "TabReceita" trec_1 (cost=0.00..165.10 rows=1 width=8) (actual time=0.384..0.693 rows=1 loops=40)

  • Filter: ("trectosID" = r."tosID")
  • Rows Removed by Filter: 6346
73. 0.160 0.160 ↑ 1.0 1 40

Index Only Scan using "TabOrdemServico_tosID" on "TabOrdemServico" tos_1 (cost=0.28..8.30 rows=1 width=4) (actual time=0.004..0.004 rows=1 loops=40)

  • Index Cond: ("tosID" = r."tosID")
  • Heap Fetches: 0
74. 0.720 0.720 ↑ 1.0 2 40

Index Scan using idx_trp_trecid_trpsubstituida on "TabReceitaParcela" trp_1 (cost=0.29..30.35 rows=2 width=8) (actual time=0.008..0.018 rows=2 loops=40)

  • Index Cond: (("trptrecID" = trec_1."trecID") AND ("trpSubstituida" = false))
  • Filter: (("trpPago" IS FALSE) AND ("trpBaixada" IS FALSE) AND ("trpSubstituida" IS FALSE) AND (('now'::cstring)::date > "trpDataVencimento"))
  • Rows Removed by Filter: 18
75. 2.280 2.280 ↑ 1,000.0 1 40

Function Scan on proc_comercial_getsituacoesordensservico (cost=0.25..10.25 rows=1,000 width=32) (actual time=0.057..0.057 rows=1 loops=40)

Planning time : 9.306 ms
Execution time : 487.424 ms