BEGIN; BEGIN EXPLAIN (ANALYZE, BUFFERS) select sum(l_extendedprice) / 7.0 as avg_yearly from lineitem, part where p_partkey = l_partkey and p_brand = 'Brand#51' and p_container = 'JUMBO BOX' and l_quantity < ( select 0.2 * avg(l_quantity) from lineitem where l_partkey = p_partkey ); QUERY PLAN ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Aggregate (cost=114864.37..114864.39 rows=1 width=4) (actual time=229.215..229.215 rows=1 loops=1) Buffers: shared hit=78003 read=4886 dirtied=396 written=53 -> Nested Loop (cost=82.84..114813.38 rows=20397 width=4) (actual time=2.299..227.685 rows=5428 loops=1) Buffers: shared hit=78003 read=4886 dirtied=396 written=53 -> Bitmap Heap Scan on part (cost=73.07..6668.16 rows=2014 width=4) (actual time=1.658..15.694 rows=2016 loops=1) Recheck Cond: ((p_container = 'JUMBO BOX'::bpchar) AND (p_brand = 'Brand#51'::bpchar)) Heap Blocks: exact=1978 Buffers: shared hit=1978 read=15 -> Bitmap Index Scan on part_p_container_p_brand_p_partkey_idx (cost=0.00..72.57 rows=2014 width=0) (actual time=1.271..1.271 rows=2016 loops=1) Index Cond: ((p_container = 'JUMBO BOX'::bpchar) AND (p_brand = 'Brand#51'::bpchar)) Buffers: shared read=15 -> Index Scan using lineitem_l_partkey_l_quantity_idx on lineitem (cost=9.76..53.60 rows=10 width=12) (actual time=0.016..0.040 rows=3 loops=2016) Index Cond: ((l_partkey = part.p_partkey) AND (l_quantity < (SubPlan 1))) Buffers: shared hit=11584 read=1949 written=23 SubPlan 1 -> Aggregate (cost=9.19..9.20 rows=1 width=4) (actual time=0.062..0.062 rows=1 loops=2016) Buffers: shared hit=64441 read=2922 dirtied=396 written=30 -> Index Only Scan using lineitem_l_partkey_l_quantity_idx on lineitem lineitem_1 (cost=0.56..9.11 rows=31 width=4) (actual time=0.031..0.056 rows=30 loops=2016) Index Cond: (l_partkey = part.p_partkey) Heap Fetches: 1344 Buffers: shared hit=64441 read=2922 dirtied=396 written=30 SubPlan 1 -> Aggregate (cost=9.19..9.20 rows=1 width=4) (actual time=0.062..0.062 rows=1 loops=2016) Buffers: shared hit=64441 read=2922 dirtied=396 written=30 -> Index Only Scan using lineitem_l_partkey_l_quantity_idx on lineitem lineitem_1 (cost=0.56..9.11 rows=31 width=4) (actual time=0.031..0.056 rows=30 loops=2016) Index Cond: (l_partkey = part.p_partkey) Heap Fetches: 1344 Buffers: shared hit=64441 read=2922 dirtied=396 written=30 Planning time: 3.301 ms Execution time: 229.384 ms (30 rows) COMMIT; COMMIT