explain.depesz.com

PostgreSQL's explain analyze made readable

Result: k5NZ

Settings
# exclusive inclusive rows x rows loops node
1. 30.449 3,053.492 ↑ 1.0 500,000 1

Limit (cost=47.25..1,167,536.81 rows=500,000 width=146) (actual time=0.137..3,053.492 rows=500,000 loops=1)

2. 1,499.061 3,023.043 ↑ 2.0 500,000 1

Merge Join (cost=47.25..2,323,876.83 rows=995,225 width=146) (actual time=0.135..3,023.043 rows=500,000 loops=1)

  • Merge Cond: (tkts.tem_registro_consumo_id = bcr.id)
  • Join Filter: (to_char(CASE WHEN (tkts.last_update > bcr.last_update) THEN tkts.last_update ELSE bcr.last_update END, 'yyyymmdd'::text) >= '20180101'::text)
3. 274.273 274.273 ↑ 11.9 500,000 1

Index Scan using idx_bill_ticket_call_rec on bill_tickets tkts (cost=0.44..616,495.91 rows=5,961,415 width=48) (actual time=0.010..274.273 rows=500,000 loops=1)

  • Filter: (COALESCE(id_tem_bill_ivn_central, (-1)) > 0)
4. 1,249.709 1,249.709 ↑ 36.0 500,000 1

Index Scan using pk_bill_call_records on tem_registro_consumo bcr (cost=0.56..1,563,202.45 rows=18,012,607 width=102) (actual time=0.009..1,249.709 rows=500,000 loops=1)

  • Filter: ((status)::text = 'CHAMADA_TARIFADA'::text)
  • Rows Removed by Filter: 1,518,796"Total runtime: 3,071.501 ms