load 'auto_explain'; LOAD set auto_explain.log_min_duration to 0; SET set auto_explain.log_analyze to on; SET set auto_explain.log_wal to on; SET set auto_explain.log_timing to on; SET set auto_explain.log_level to notice; SET BEGIN; BEGIN select sum(l_extendedprice) / 7.0 as avg_yearly from lineitem, part where p_partkey = l_partkey and p_brand = 'Brand#44' and p_container = 'WRAP DRUM' and l_quantity < ( select 0.2 * avg(l_quantity) from lineitem where l_partkey = p_partkey ); NOTICE: duration: 91.654 ms plan: Query Text: select sum(l_extendedprice) / 7.0 as avg_yearly from lineitem, part where p_partkey = l_partkey and p_brand = 'Brand#44' and p_container = 'WRAP DRUM' and l_quantity < ( select 0.2 * avg(l_quantity) from lineitem where l_partkey = p_partkey ); Aggregate (cost=111204.62..111204.63 rows=1 width=32) (actual time=91.642..91.644 rows=1 loops=1) -> Nested Loop (cost=10.17..111152.85 rows=20705 width=8) (actual time=0.206..90.659 rows=5136 loops=1) -> Index Only Scan using part_p_container_p_brand_p_partkey_idx on part (cost=0.43..89.81 rows=2069 width=4) (actual time=0.050..0.656 rows=1925 loops=1) Index Cond: ((p_container = 'WRAP DRUM'::bpchar) AND (p_brand = 'Brand#44'::bpchar)) Heap Fetches: 0 -> Index Scan using lineitem_l_partkey_l_quantity_l_shipmode_idx on lineitem (cost=9.74..53.58 rows=10 width=17) (actual time=0.008..0.019 rows=3 loops=1925) Index Cond: ((l_partkey = part.p_partkey) AND (l_quantity < (SubPlan 1))) SubPlan 1 -> Aggregate (cost=9.17..9.18 rows=1 width=32) (actual time=0.026..0.026 rows=1 loops=1925) -> Index Only Scan using lineitem_l_partkey_l_quantity_l_shipmode_idx on lineitem lineitem_1 (cost=0.56..9.09 rows=30 width=5) (actual time=0.012..0.022 rows=30 loops=1925) Index Cond: (l_partkey = part.p_partkey) Heap Fetches: 77 avg_yearly ---------------------- 3015392.252857142857 (1 row) COMMIT; COMMIT