BEGIN; BEGIN EXPLAIN (ANALYZE, BUFFERS) select ps_partkey, sum(ps_supplycost * ps_availqty) as value from partsupp, supplier, nation where ps_suppkey = s_suppkey and s_nationkey = n_nationkey and n_name = 'VIETNAM' group by ps_partkey having sum(ps_supplycost * ps_availqty) > ( select sum(ps_supplycost * ps_availqty) * 0.0000100000 from partsupp, supplier, nation where ps_suppkey = s_suppkey and s_nationkey = n_nationkey and n_name = 'VIETNAM' ) order by value desc; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Sort (cost=614384.02..615183.97 rows=319981 width=12) (actual time=8312.482..8313.606 rows=9650 loops=1) Sort Key: (sum((partsupp.ps_supplycost * (partsupp.ps_availqty)::double precision))) Sort Method: quicksort Memory: 837kB Buffers: shared hit=28574 read=317709 written=48 InitPlan 1 (returns $1) -> Aggregate (cost=288962.98..288962.99 rows=1 width=8) (actual time=3923.207..3923.207 rows=1 loops=1) Buffers: shared hit=12709 read=160431 written=8 -> Hash Join (cost=2405.31..286563.12 rows=319981 width=8) (actual time=26.210..3826.441 rows=318960 loops=1) Hash Cond: (partsupp_1.ps_suppkey = supplier_1.s_suppkey) Buffers: shared hit=12709 read=160431 written=8 -> Seq Scan on partsupp partsupp_1 (cost=0.00..250958.00 rows=8000000 width=12) (actual time=0.018..2486.761 rows=8000000 loops=1) Buffers: shared hit=10528 read=160430 written=8 -> Hash (cost=2355.31..2355.31 rows=4000 width=4) (actual time=26.152..26.152 rows=3987 loops=1) Buckets: 4096 Batches: 1 Memory Usage: 173kB Buffers: shared hit=2181 read=1 -> Nested Loop (cost=43.00..2355.31 rows=4000 width=4) (actual time=0.295..25.289 rows=3987 loops=1) Buffers: shared hit=2181 read=1 -> Seq Scan on nation nation_1 (cost=0.00..1.31 rows=1 width=4) (actual time=0.009..0.012 rows=1 loops=1) Filter: (n_name = 'VIETNAM'::bpchar) Rows Removed by Filter: 24 Buffers: shared hit=1 -> Bitmap Heap Scan on supplier supplier_1 (cost=43.00..2314.00 rows=4000 width=8) (actual time=0.269..24.628 rows=3987 loops=1) Recheck Cond: (s_nationkey = nation_1.n_nationkey) Rows Removed by Index Recheck: 96013 Heap Blocks: lossy=2179 Buffers: shared hit=2180 read=1 -> Bitmap Index Scan on supplier_s_nationkey_s_suppkey_brin_idx (cost=0.00..42.00 rows=4000 width=0) (actual time=0.252..0.252 rows=23040 loops=1) Index Cond: (s_nationkey = nation_1.n_nationkey) Buffers: shared hit=1 read=1 -> HashAggregate (cost=292162.79..296162.55 rows=319981 width=12) (actual time=8224.249..8307.198 rows=9650 loops=1) Group Key: partsupp.ps_partkey Filter: (sum((partsupp.ps_supplycost * (partsupp.ps_availqty)::double precision)) > $1) Rows Removed by Filter: 291243 Buffers: shared hit=28571 read=317709 written=48 -> Hash Join (cost=2405.31..286563.12 rows=319981 width=12) (actual time=41.922..4040.678 rows=318960 loops=1) Hash Cond: (partsupp.ps_suppkey = supplier.s_suppkey) Buffers: shared hit=15862 read=157278 written=40 -> Seq Scan on partsupp (cost=0.00..250958.00 rows=8000000 width=16) (actual time=0.029..2664.759 rows=8000000 loops=1) Buffers: shared hit=13682 read=157276 written=40 -> Hash (cost=2355.31..2355.31 rows=4000 width=4) (actual time=41.861..41.861 rows=3987 loops=1) Buckets: 4096 Batches: 1 Memory Usage: 173kB Buffers: shared hit=2180 read=2 -> Nested Loop (cost=43.00..2355.31 rows=4000 width=4) (actual time=0.315..40.760 rows=3987 loops=1) Buffers: shared hit=2180 read=2 -> Seq Scan on nation (cost=0.00..1.31 rows=1 width=4) (actual time=0.011..0.014 rows=1 loops=1) Filter: (n_name = 'VIETNAM'::bpchar) Rows Removed by Filter: 24 Buffers: shared hit=1 -> Bitmap Heap Scan on supplier (cost=43.00..2314.00 rows=4000 width=8) (actual time=0.293..40.099 rows=3987 loops=1) Recheck Cond: (s_nationkey = nation.n_nationkey) Rows Removed by Index Recheck: 96013 Heap Blocks: lossy=2179 Buffers: shared hit=2179 read=2 -> Bitmap Index Scan on supplier_s_nationkey_s_suppkey_brin_idx (cost=0.00..42.00 rows=4000 width=0) (actual time=0.271..0.271 rows=23040 loops=1) Index Cond: (s_nationkey = nation.n_nationkey) Buffers: shared read=2 Planning time: 2.635 ms Execution time: 8319.366 ms (58 rows) COMMIT; COMMIT