explain.depesz.com

PostgreSQL's explain analyze made readable

Result: reml : tpch4

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

Limit (cost=144,011.94..144,011.96 rows=1 width=72) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Gather Motion 16:1 (slice2; segments: 16) (cost=144,011.94..144,011.96 rows=1 width=72) (actual rows= loops=)

  • Merge Key: partial_aggregation.o_orderpriority
3. 0.000 0.000 ↓ 0.0

Limit (cost=144,011.94..144,011.94 rows=1 width=72) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Sort (cost=144,011.94..144,011.94 rows=1 width=72) (actual rows= loops=)

  • Sort Key (Limit): partial_aggregation.o_orderpriority
5. 0.000 0.000 ↓ 0.0

HashAggregate (cost=144,011.92..144,011.93 rows=1 width=72) (actual rows= loops=)

  • Group By: orders.o_orderpriority
6. 0.000 0.000 ↓ 0.0

Redistribute Motion 16:16 (slice1; segments: 16) (cost=144,011.88..144,011.90 rows=1 width=72) (actual rows= loops=)

  • Hash Key: orders.o_orderpriority
7. 0.000 0.000 ↓ 0.0

HashAggregate (cost=144,011.88..144,011.88 rows=1 width=72) (actual rows= loops=)

  • Group By: orders.o_orderpriority
8. 0.000 0.000 ↓ 0.0

HashAggregate (cost=142,925.49..143,649.75 rows=4,527 width=70) (actual rows= loops=)

  • Group By: orders.ctid::bigint
9. 0.000 0.000 ↓ 0.0

Hash Join (cost=30,222.75..142,744.42 rows=4,527 width=22) (actual rows= loops=)

  • Hash Cond: lineitem.l_orderkey = orders.o_orderkey
10. 0.000 0.000 ↓ 0.0

Seq Scan on lineitem (cost=0.00..106,613.89 rows=125,062 width=8) (actual rows= loops=)

  • Filter: l_commitdate < l_receiptdate
11. 0.000 0.000 ↓ 0.0

Hash (cost=29,543.50..29,543.50 rows=3,397 width=30) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Seq Scan on orders (cost=0.00..29,543.50 rows=3,397 width=30) (actual rows= loops=)

  • Filter: o_orderdate >= '1997-04-01'::date AND o_orderdate < '1997-07-01 00:00:00'::timestamp without time zone