explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 7YnB

Settings
# exclusive inclusive rows x rows loops node
1. 1.006 28,866.101 ↑ 1.0 1 1

Aggregate (cost=1,181,901.79..1,181,901.80 rows=1 width=8) (actual time=28,866.101..28,866.101 rows=1 loops=1)

  • Buffers: shared hit=4015 read=419335 dirtied=215317 written=215195
2. 3.061 28,865.095 ↓ 1.3 1,421 1

Nested Loop (cost=1,178,872.07..1,181,899.05 rows=1,097 width=4) (actual time=26,622.731..28,865.095 rows=1,421 loops=1)

  • Buffers: shared hit=4015 read=419335 dirtied=215317 written=215195
3. 7.126 26,616.854 ↓ 1.3 1,421 1

HashAggregate (cost=1,178,871.63..1,178,877.11 rows=1,096 width=4) (actual time=26,615.554..26,616.854 rows=1,421 loops=1)

  • Group Key: paymentadd1_.payment_id
  • Buffers: shared hit=114 read=417371 dirtied=215300 written=215195
4. 26,609.728 26,609.728 ↓ 1.3 1,421 1

Seq Scan on payment_additional_detail paymentadd1_ (cost=0.00..1,178,868.89 rows=1,097 width=4) (actual time=52.937..26,609.728 rows=1,421 loops=1)

  • Filter: ((((key)::text = 'cardHolder'::text) OR ((key)::text = 'cardNumber'::text)) AND (lower(value) ~~ '%3423%'::text))
  • Rows Removed by Filter: 50333978
  • Buffers: shared hit=114 read=417371 dirtied=215300 written=215195
5. 2,245.180 2,245.180 ↑ 1.0 1 1,421

Index Only Scan using pk_payment_id on payment payment0_ (cost=0.43..2.75 rows=1 width=4) (actual time=1.571..1.580 rows=1 loops=1,421)

  • Index Cond: (id = paymentadd1_.payment_id)
  • Heap Fetches: 335
  • Buffers: shared hit=3901 read=1964 dirtied=17