explain.depesz.com

PostgreSQL's explain analyze made readable

Result: GjqO

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Aggregate (cost=3,830,491,312.38..3,830,491,312.39 rows=1 width=8) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Seq Scan on transactions txn (cost=34,826.96..3,830,491,278.62 rows=13,507 width=16) (actual rows= loops=)

  • Filter: ((NOT (hashed SubPlan 2)) AND (NOT (hashed SubPlan 3)) AND (payer_id <> 'b2201b06-ca09-49f6-89dc-45d5f06e0bd6'::uuid) AND (NOT (hashed SubPlan 4)) AND (NOT (SubPlan 1)))
3.          

SubPlan (forSeq Scan)

4. 0.000 0.000 ↓ 0.0

Gather (cost=1,000.00..32,128.26 rows=1,174 width=16) (actual rows= loops=)

  • Workers Planned: 2
5. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on bank_accounts bank_accounts_1 (cost=0.00..31,010.86 rows=489 width=16) (actual rows= loops=)

  • Filter: ((currency_code)::text = 'campfire_coffee_voucher'::text)
6. 0.000 0.000 ↓ 0.0

Seq Scan on stores (cost=0.00..2,608.26 rows=31,626 width=16) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Index Scan using users_disabled_at_index on users (cost=0.42..8.44 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (disabled_at IS NOT NULL)
8. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..35,161.68 rows=114,084 width=16) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Seq Scan on bank_accounts (cost=0.00..34,033.26 rows=114,084 width=16) (actual rows= loops=)

  • Filter: ((currency_code)::text = 'GBP'::text)