explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Lru5

Settings
# exclusive inclusive rows x rows loops node
1. 2.110 1,773.800 ↑ 1.0 1 1

Aggregate (cost=109,802.63..109,802.64 rows=1 width=0) (actual time=1,773.799..1,773.800 rows=1 loops=1)

2. 64.976 1,771.690 ↑ 1.0 4,187 1

Hash Join (cost=366.96..109,791.99 rows=4,257 width=0) (actual time=174.091..1,771.690 rows=4,187 loops=1)

  • Hash Cond: (tr.id_config = sc.id)
  • Join Filter: ((hashed SubPlan 1) OR ((hashed SubPlan 2) AND ((((sc.spbc_config_type)::text = 'FIRM'::text) AND ((tr.status)::text <> 'PZ_SENDER_EXCEEDED'::text)) OR ((sc.spbc_config_type)::text <> 'FIRM'::text))))
  • Rows Removed by Join Filter: 61094
3. 1,704.680 1,704.680 ↓ 10.6 65,281 1

Index Scan using idx_transfer_rejected_create_time on transfer_rejected tr (cost=0.43..109,263.05 rows=6,187 width=31) (actual time=65.466..1,704.680 rows=65,281 loops=1)

  • Index Cond: ((create_time >= '2019-03-01 00:00:00'::timestamp without time zone) AND (create_time < '2019-04-01 00:00:00'::timestamp without time zone))
  • Filter: ((status)::text = ANY ('{PZ_RECEIVER_EXCEEDED,LT_RECEIVER_EXCEEDED,PZ_SENDER_EXCEEDED}'::text[]))
  • Rows Removed by Filter: 135597
4. 0.175 0.554 ↓ 1.0 221 1

Hash (cost=24.19..24.19 rows=219 width=17) (actual time=0.554..0.554 rows=221 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 11kB
5. 0.379 0.379 ↓ 1.0 221 1

Seq Scan on spbc_config sc (cost=0.00..24.19 rows=219 width=17) (actual time=0.007..0.379 rows=221 loops=1)

6.          

SubPlan (forHash Join)

7. 1.334 1.334 ↑ 1.0 124 1

Seq Scan on account (cost=0.00..329.11 rows=124 width=4) (actual time=0.009..1.334 rows=124 loops=1)

  • Filter: dru
  • Rows Removed by Filter: 187
8. 0.146 0.146 ↑ 1.0 124 1

Seq Scan on bank (cost=0.00..9.88 rows=124 width=4) (actual time=0.016..0.146 rows=124 loops=1)

  • Filter: ((bank_type)::text = 'MEMBER'::text)
  • Rows Removed by Filter: 26