explain.depesz.com

PostgreSQL's explain analyze made readable

Result: VxI : Optimization for: store in; plan #o4T4O

Settings

Optimization path:

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

Gather (cost=1,566,032.58..1,609,790.77 rows=1 width=585) (actual rows= loops=)

  • Workers Planned: 2
2. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1,565,032.58..1,608,790.67 rows=1 width=585) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Merge Join (cost=1,565,032.02..1,605,688.37 rows=1,199 width=205) (actual rows= loops=)

  • Merge Cond: ((e.store_id = a.store_id) AND ((e.account_number)::text = (a.account_number_dms)::text))
4. 0.000 0.000 ↓ 0.0

Sort (cost=1,542,794.99..1,556,304.88 rows=5,403,958 width=108) (actual rows= loops=)

  • Sort Key: e.store_id, e.account_number
5. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on schedule_entry e (cost=0.00..310,476.58 rows=5,403,958 width=108) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Sort (cost=22,235.35..22,274.46 rows=15,644 width=97) (actual rows= loops=)

  • Sort Key: a.store_id, a.account_number_dms
7. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on account_map a (cost=389.93..21,145.48 rows=15,644 width=97) (actual rows= loops=)

  • Recheck Cond: (account_number_rr = ANY ('{303,304,305,306,310,312,316,317,327,335,337}'::integer[]))
8. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on uq_account_map_1265491637 (cost=0.00..386.02 rows=15,644 width=0) (actual rows= loops=)

  • Index Cond: (account_number_rr = ANY ('{303,304,305,306,310,312,316,317,327,335,337}'::integer[]))
9. 0.000 0.000 ↓ 0.0

Index Scan using pk_sale_2029966308 on sale s (cost=0.56..2.58 rows=1 width=380) (actual rows= loops=)

  • Index Cond: ((store_id = e.store_id) AND (store_id = ANY ('{1072,1073}'::numeric[])))
  • Filter: ((date_sold IS NOT NULL) AND ((e.dms_control)::text = (stock_number)::text))