explain.depesz.com

PostgreSQL's explain analyze made readable

Result: eF6 : ///0

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

Hash Join (cost=505.49..540.00 rows=1 width=36) (actual rows= loops=)

  • Hash Cond: (((p.good)::text = (i.good)::text) AND (p.date = x.p_date))
2. 0.000 0.000 ↓ 0.0

Seq Scan on price p (cost=0.00..24.00 rows=1,400 width=28) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Hash (cost=505.39..505.39 rows=7 width=52) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Hash Join (cost=404.32..505.39 rows=7 width=52) (actual rows= loops=)

  • Hash Cond: (((i.good)::text = (x.good)::text) AND (i.date = x.i_date))
5. 0.000 0.000 ↓ 0.0

Seq Scan on inventory i (cost=0.00..24.00 rows=1,400 width=28) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Hash (cost=401.32..401.32 rows=200 width=28) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Subquery Scan on x (cost=397.32..401.32 rows=200 width=28) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

HashAggregate (cost=397.32..399.32 rows=200 width=28) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Merge Join (cost=194.32..372.82 rows=3,267 width=28) (actual rows= loops=)

  • Merge Cond: ((i.good)::text = (p.good)::text)
  • Join Filter: (i.date >= p.date)
10. 0.000 0.000 ↓ 0.0

Sort (cost=97.16..100.66 rows=1,400 width=24) (actual rows= loops=)

  • Sort Key: i.good
11. 0.000 0.000 ↓ 0.0

Seq Scan on inventory i (cost=0.00..24.00 rows=1,400 width=24) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Sort (cost=97.16..100.66 rows=1,400 width=24) (actual rows= loops=)

  • Sort Key: p.good
13. 0.000 0.000 ↓ 0.0

Seq Scan on price p (cost=0.00..24.00 rows=1,400 width=24) (actual rows= loops=)