explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 0bjr : hash

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

Unique (cost=670,120.70..670,408.41 rows=57,542 width=32) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Sort (cost=670,120.70..670,264.56 rows=57,542 width=32) (actual rows= loops=)

  • Sort Key: (ROW(r.a, r.b, r.c, s.d))
3. 0.000 0.000 ↓ 0.0

Gather (cost=467,690.28..665,571.34 rows=57,542 width=32) (actual rows= loops=)

  • Workers Planned: 1
4. 0.000 0.000 ↓ 0.0

Hash Join (cost=466,690.28..658,817.14 rows=33,848 width=32) (actual rows= loops=)

  • Hash Cond: ((r.b = s.b) AND (r.c = s.c) AND (r.a = t.a))
5. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on r (cost=0.00..5,644.18 rows=294,118 width=12) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Hash (cost=466,429.71..466,429.71 rows=14,890 width=28) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Hash Join (cost=134,991.80..466,429.71 rows=14,890 width=28) (actual rows= loops=)

  • Hash Cond: ((u.b = s.b) AND (u.a = t.a) AND (u.d = s.d))
8. 0.000 0.000 ↓ 0.0

Seq Scan on u (cost=0.00..309.00 rows=20,000 width=12) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Hash (cost=125,888.02..125,888.02 rows=389,702 width=24) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Hash Join (cost=7,059.00..125,888.02 rows=389,702 width=24) (actual rows= loops=)

  • Hash Cond: ((t.c = s.c) AND (t.d = s.d))
11. 0.000 0.000 ↓ 0.0

Seq Scan on t (cost=0.00..309.00 rows=20,000 width=12) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Hash (cost=3,082.00..3,082.00 rows=200,000 width=12) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Seq Scan on s (cost=0.00..3,082.00 rows=200,000 width=12) (actual rows= loops=)