explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Par

Settings
# exclusive inclusive rows x rows loops node
1. 16.483 77.253 ↓ 2.0 397 1

Gather (cost=1,551.90..14,438.08 rows=197 width=149) (actual time=68.428..77.253 rows=397 loops=1)

  • Output: pagamento.id, pagamento.operadora_id, pagamento.hospital_id, pagamento.convenio_id, pagamento.protocolo, pagamento.data_pagamento, pagamento.data_recebimento, guia.id, guia.pagamento_id, guia.beneficiario_id, guia.status_analise_glosa, guia.numero, guia.data_atendimento_inicio, guia.data_atendimento_fim, guia.senha, guia.valor_total_apresentado, guia.valor_total_pago, guia.diferenca, guia.valor_total_glosa_informada, guia.quantidade_itens, guia.id_tenant, guia.id_nucleo, guia.guia_associada, guia.valor_total_recursado, guia.valor_total_aceito
  • Workers Planned: 2
  • Workers Launched: 2
  • Buffers: shared hit=2596 read=384
2. 0.078 60.770 ↓ 1.6 132 3 / 3

Nested Loop (cost=551.90..13,418.38 rows=82 width=149) (actual time=58.111..60.770 rows=132 loops=3)

  • Output: pagamento.id, pagamento.operadora_id, pagamento.hospital_id, pagamento.convenio_id, pagamento.protocolo, pagamento.data_pagamento, pagamento.data_recebimento, guia.id, guia.pagamento_id, guia.beneficiario_id, guia.status_analise_glosa, guia.numero, guia.data_atendimento_inicio, guia.data_atendimento_fim, guia.senha, guia.valor_total_apresentado, guia.valor_total_pago, guia.diferenca, guia.valor_total_glosa_informada, guia.quantidade_itens, guia.id_tenant, guia.id_nucleo, guia.guia_associada, guia.valor_total_recursado, guia.valor_total_aceito
  • Buffers: shared hit=2596 read=384
  • Worker 0: actual time=53.306..55.975 rows=159 loops=1
  • Buffers: shared hit=628 read=116
  • Worker 1: actual time=52.910..55.055 rows=62 loops=1
  • Buffers: shared hit=722 read=113
3. 52.706 55.694 ↓ 1.2 6 3 / 3

Parallel Bitmap Heap Scan on teste_nao_particionando.pagamento (cost=551.47..8,990.00 rows=5 width=47) (actual time=55.641..55.694 rows=6 loops=3)

  • Output: pagamento.id, pagamento.operadora_id, pagamento.hospital_id, pagamento.convenio_id, pagamento.protocolo, pagamento.data_pagamento, pagamento.data_recebimento
  • Recheck Cond: ((pagamento.data_pagamento >= '2018-11-10'::date) AND (pagamento.data_pagamento <= '2018-11-20'::date))
  • Filter: ((pagamento.convenio_id = 65) AND (pagamento.hospital_id = 18764))
  • Rows Removed by Filter: 5129
  • Heap Blocks: exact=1339
  • Buffers: shared hit=2530 read=362
  • Worker 0: actual time=50.839..50.955 rows=11 loops=1
  • Buffers: shared hit=585 read=107
  • Worker 1: actual time=50.221..50.241 rows=4 loops=1
  • Buffers: shared hit=705 read=109
4. 2.988 2.988 ↑ 1.1 15,405 1 / 3

Bitmap Index Scan on pagamento_data_pagamento (cost=0.00..551.46 rows=17,104 width=0) (actual time=8.965..8.965 rows=15,405 loops=1)

  • Index Cond: ((pagamento.data_pagamento >= '2018-11-10'::date) AND (pagamento.data_pagamento <= '2018-11-20'::date))
  • Buffers: shared hit=35 read=12
5. 4.998 4.998 ↑ 12.0 22 18 / 3

Index Scan using guia_pagamento_id on teste_nao_particionando.guia (cost=0.43..883.04 rows=264 width=102) (actual time=0.676..0.833 rows=22 loops=18)

  • Output: guia.id, guia.pagamento_id, guia.beneficiario_id, guia.status_analise_glosa, guia.numero, guia.data_atendimento_inicio, guia.data_atendimento_fim, guia.senha, guia.valor_total_apresentado, guia.valor_total_pago, guia.diferenca, guia.valor_total_glosa_informada, guia.quantidade_itens, guia.id_tenant, guia.id_nucleo, guia.guia_associada, guia.valor_total_recursado, guia.valor_total_aceito
  • Index Cond: (guia.pagamento_id = pagamento.id)
  • Buffers: shared hit=66 read=22
  • Worker 0: actual time=0.364..0.449 rows=14 loops=11
  • Buffers: shared hit=43 read=9
  • Worker 1: actual time=1.045..1.193 rows=16 loops=4
  • Buffers: shared hit=17 read=4
Planning time : 0.348 ms
Execution time : 77.330 ms