explain.depesz.com

PostgreSQL's explain analyze made readable

Result: TpD : tpch7

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

Limit (cost=380,569.78..380,569.84 rows=1 width=248) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Gather Motion 16:1 (slice7; segments: 16) (cost=380,569.78..380,569.84 rows=1 width=248) (actual rows= loops=)

  • Merge Key: partial_aggregation.supp_nation, partial_aggregation.cust_nation, partial_aggregation.unnamed_attr_3
3. 0.000 0.000 ↓ 0.0

Limit (cost=380,569.78..380,569.82 rows=1 width=248) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=380,569.78..380,764.98 rows=349 width=248) (actual rows= loops=)

  • Group By: n1.n_name, n2.n_name, "?column3?
5. 0.000 0.000 ↓ 0.0

Sort (cost=380,569.78..380,583.73 rows=349 width=248) (actual rows= loops=)

  • Sort Key: n1.n_name, n2.n_name, unnamed_attr_3
6. 0.000 0.000 ↓ 0.0

Redistribute Motion 16:16 (slice6; segments: 16) (cost=379,916.01..380,222.75 rows=349 width=248) (actual rows= loops=)

  • Hash Key: n1.n_name, n2.n_name, "?column3?
7. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=379,916.01..380,111.21 rows=349 width=248) (actual rows= loops=)

  • Group By: n1.n_name, n2.n_name, "?column6?
8. 0.000 0.000 ↓ 0.0

Sort (cost=379,916.01..379,929.95 rows=349 width=72) (actual rows= loops=)

  • Sort Key: n1.n_name, n2.n_name, "?column6?
9. 0.000 0.000 ↓ 0.0

Hash Join (cost=140,114.17..379,568.97 rows=349 width=72) (actual rows= loops=)

  • Hash Cond: lineitem.l_orderkey = orders.o_orderkey
  • Join Filter: (n1.n_name = 'JORDAN'::bpchar AND n2.n_name = 'ROMANIA'::bpchar) OR (n1.n_name = 'ROMANIA'::bpchar AND n2.n_name = 'JORDAN'::
10. 0.000 0.000 ↓ 0.0

Hash Join (cost=4,414.50..217,622.15 rows=109,015 width=54) (actual rows= loops=)

  • Hash Cond: lineitem.l_suppkey = supplier.s_suppkey
11. 0.000 0.000 ↓ 0.0

Seq Scan on lineitem (cost=0.00..121,621.26 rows=109,369 width=36) (actual rows= loops=)

  • Filter: l_shipdate >= '1995-01-01'::date AND l_shipdate <= '1996-12-31'::date
12. 0.000 0.000 ↓ 0.0

Hash (cost=2,414.50..2,414.50 rows=10,000 width=34) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Broadcast Motion 16:16 (slice2; segments: 16) (cost=25.50..2,414.50 rows=10,000 width=34) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Hash Join (cost=25.50..714.50 rows=625 width=34) (actual rows= loops=)

  • Hash Cond: supplier.s_nationkey = n1.n_nationkey
15. 0.000 0.000 ↓ 0.0

Seq Scan on supplier (cost=0.00..164.00 rows=625 width=16) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Hash (cost=20.50..20.50 rows=25 width=34) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Broadcast Motion 16:16 (slice1; segments: 16) (cost=0.00..20.50 rows=25 width=34) (actual rows= loops=)

18. 0.000 0.000 ↓ 0.0

Seq Scan on nation n1 (cost=0.00..16.25 rows=2 width=34) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Hash (cost=116,933.42..116,933.42 rows=93,832 width=34) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Redistribute Motion 16:16 (slice5; segments: 16) (cost=12,324.92..116,933.42 rows=93,832 width=34) (actual rows= loops=)

  • Hash Key: orders.o_orderkey
21. 0.000 0.000 ↓ 0.0

Hash Join (cost=12,324.92..86,907.42 rows=93,832 width=34) (actual rows= loops=)

  • Hash Cond: orders.o_custkey = customer.c_custkey
22. 0.000 0.000 ↓ 0.0

Redistribute Motion 16:16 (slice3; segments: 16) (cost=0.00..52,063.00 rows=93,832 width=16) (actual rows= loops=)

  • Hash Key: orders.o_custkey
23. 0.000 0.000 ↓ 0.0

Seq Scan on orders (cost=0.00..22,037.00 rows=93,832 width=16) (actual rows= loops=)

24. 0.000 0.000 ↓ 0.0

Hash (cost=10,434.19..10,434.19 rows=9,454 width=34) (actual rows= loops=)

25. 0.000 0.000 ↓ 0.0

Hash Join (cost=25.50..10,434.19 rows=9,454 width=34) (actual rows= loops=)

  • Hash Cond: customer.c_nationkey = n2.n_nationkey
26. 0.000 0.000 ↓ 0.0

Seq Scan on customer (cost=0.00..2,467.59 rows=9,454 width=16) (actual rows= loops=)

27. 0.000 0.000 ↓ 0.0

Hash (cost=20.50..20.50 rows=25 width=34) (actual rows= loops=)

28. 0.000 0.000 ↓ 0.0

Broadcast Motion 16:16 (slice4; segments: 16) (cost=0.00..20.50 rows=25 width=34) (actual rows= loops=)

29. 0.000 0.000 ↓ 0.0

Seq Scan on nation n2 (cost=0.00..16.25 rows=2 width=34) (actual rows= loops=)