BEGIN; BEGIN EXPLAIN (ANALYZE, BUFFERS) select nation, o_year, sum(amount) as sum_profit from ( select n_name as nation, extract(year from o_orderdate) as o_year, l_extendedprice * (1 - l_discount) - ps_supplycost * l_quantity as amount from part, supplier, lineitem, partsupp, orders, nation where s_suppkey = l_suppkey and ps_suppkey = l_suppkey and ps_partkey = l_partkey and p_partkey = l_partkey and o_orderkey = l_orderkey and s_nationkey = n_nationkey and p_name like '%mint%' ) as profit group by nation, o_year order by nation, o_year desc; QUERY PLAN ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- GroupAggregate (cost=1388012.46..1388018.06 rows=160 width=46) (actual time=129848.293..133079.228 rows=175 loops=1) Group Key: nation.n_name, (date_part('year'::text, (orders.o_orderdate)::timestamp without time zone)) Buffers: shared hit=35557586 read=2409176 dirtied=9695 written=15121 -> Sort (cost=1388012.46..1388012.86 rows=160 width=46) (actual time=129833.597..130816.066 rows=3261582 loops=1) Sort Key: nation.n_name, (date_part('year'::text, (orders.o_orderdate)::timestamp without time zone)) Sort Method: quicksort Memory: 556964kB Buffers: shared hit=35557586 read=2409176 dirtied=9695 written=15121 -> Hash Join (cost=67176.63..1388006.60 rows=160 width=46) (actual time=1531.476..118232.270 rows=3261582 loops=1) Hash Cond: (supplier.s_nationkey = nation.n_nationkey) Buffers: shared hit=35557578 read=2409176 dirtied=9695 written=15121 -> Nested Loop (cost=67175.07..1388002.04 rows=160 width=24) (actual time=1531.397..113977.740 rows=3261582 loops=1) Buffers: shared hit=35557574 read=2409176 dirtied=9695 written=15121 -> Nested Loop (cost=67174.63..1387924.49 rows=160 width=24) (actual time=1531.293..61544.624 rows=3261582 loops=1) Buffers: shared hit=23238507 read=1664041 dirtied=9689 written=11108 -> Nested Loop (cost=67174.34..1387872.87 rows=160 width=28) (actual time=1531.278..47208.021 rows=3261582 loops=1) Buffers: shared hit=13435479 read=1664041 dirtied=9689 written=11108 -> Hash Join (cost=67173.77..353417.45 rows=528568 width=16) (actual time=1531.213..6796.318 rows=434676 loops=1) Hash Cond: (partsupp.ps_partkey = part.p_partkey) Buffers: shared hit=54835 read=156645 written=747 -> Seq Scan on partsupp (cost=0.00..250958.00 rows=8000000 width=12) (actual time=0.010..3042.053 rows=8000000 loops=1) Buffers: shared hit=54833 read=116125 written=678 -> Hash (cost=65522.00..65522.00 rows=132142 width=4) (actual time=1528.844..1528.844 rows=108669 loops=1) Buckets: 262144 Batches: 1 Memory Usage: 5869kB Buffers: shared hit=2 read=40520 written=69 -> Seq Scan on part (cost=0.00..65522.00 rows=132142 width=4) (actual time=0.028..1458.244 rows=108669 loops=1) Filter: ((p_name)::text ~~ '%mint%'::text) Rows Removed by Filter: 1891331 Buffers: shared hit=2 read=40520 written=69 -> Index Scan using lineitem_l_partkey_l_quantity_l_shipmode_idx on lineitem (cost=0.56..1.95 rows=1 width=24) (actual time=0.018..0.090 rows=8 loops=434676) Index Cond: (l_partkey = partsupp.ps_partkey) Filter: (partsupp.ps_suppkey = l_suppkey) Rows Removed by Filter: 23 Buffers: shared hit=13380644 read=1507396 dirtied=9689 written=10361 -> Index Scan using pk_supplier on supplier (cost=0.29..0.31 rows=1 width=8) (actual time=0.003..0.003 rows=1 loops=3261582) Index Cond: (s_suppkey = lineitem.l_suppkey) Buffers: shared hit=9803028 -> Index Only Scan using orders_o_orderkey_o_orderdate_idx on orders (cost=0.43..0.47 rows=1 width=8) (actual time=0.015..0.015 rows=1 loops=3261582) Index Cond: (o_orderkey = lineitem.l_orderkey) Heap Fetches: 3261582 Buffers: shared hit=12319067 read=745135 dirtied=6 written=4013 -> Hash (cost=1.25..1.25 rows=25 width=30) (actual time=0.031..0.031 rows=25 loops=1) Buckets: 1024 Batches: 1 Memory Usage: 10kB Buffers: shared hit=1 -> Seq Scan on nation (cost=0.00..1.25 rows=25 width=30) (actual time=0.007..0.013 rows=25 loops=1) Buffers: shared hit=1 Planning time: 55.870 ms Execution time: 133119.344 ms (47 rows) COMMIT; COMMIT