explain.depesz.com

PostgreSQL's explain analyze made readable

Result: CjS6

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

Merge Join (cost=792,137.74..792,419.14 rows=2 width=32) (actual rows= loops=)

  • Merge Cond: (s.deal_sk = fs.deal_sk)
2. 0.000 0.000 ↓ 0.0

Sort (cost=11.92..11.93 rows=2 width=16) (actual rows= loops=)

  • Sort Key: s.deal_sk
3. 0.000 0.000 ↓ 0.0

Index Scan using idx_fact_spot_source_spot_id on fact_spot s (cost=0.43..11.91 rows=2 width=16) (actual rows= loops=)

  • Index Cond: (source_spot_id = 47659158)
  • Filter: (is_active_record = 1)
4. 0.000 0.000 ↓ 0.0

Finalize GroupAggregate (cost=792,125.82..792,313.40 rows=7,503 width=16) (actual rows= loops=)

  • Group Key: fs.deal_sk
5. 0.000 0.000 ↓ 0.0

Sort (cost=792,125.82..792,163.34 rows=15,006 width=16) (actual rows= loops=)

  • Sort Key: fs.deal_sk
6. 0.000 0.000 ↓ 0.0

Gather (cost=789,509.28..791,084.91 rows=15,006 width=16) (actual rows= loops=)

  • Workers Planned: 2
7. 0.000 0.000 ↓ 0.0

Partial HashAggregate (cost=788,509.28..788,584.31 rows=7,503 width=16) (actual rows= loops=)

  • Group Key: fs.deal_sk
8. 0.000 0.000 ↓ 0.0

Hash Join (cost=1,294.11..768,531.60 rows=3,995,537 width=16) (actual rows= loops=)

  • Hash Cond: (fs.order_end_date_sk = dd.date_sk)
9. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on fact_spot fs (cost=0.00..756,747.18 rows=3,995,537 width=12) (actual rows= loops=)

  • Filter: (is_active_record = 1)
10. 0.000 0.000 ↓ 0.0

Hash (cost=1,020.16..1,020.16 rows=21,916 width=12) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Seq Scan on dim_dates dd (cost=0.00..1,020.16 rows=21,916 width=12) (actual rows= loops=)