explain select * from big join low on b=l order by b; QUERY PLAN ------------------------------------------------------------------------------ Merge Join (cost=0.00..89.31 rows=1000 width=8) Merge Cond: (big.b = low.l) -> Index Scan using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan using lowi on low (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join low on b=l order by b desc; QUERY PLAN --------------------------------------------------------------------------------------- Merge Join (cost=3266.70..3356.01 rows=1000 width=8) Merge Cond: (big.b = low.l) -> Index Scan Backward using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan Backward using lowi on low (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join lowp on b=l order by b; QUERY PLAN ------------------------------------------------------------------------------ Merge Join (cost=306.00..395.48 rows=1000 width=8) Merge Cond: (big.b = lowp.l) -> Index Scan using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan using lowpi on lowp (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join lowp on b=l order by b desc; QUERY PLAN --------------------------------------------------------------------------------------- Merge Join (cost=2960.53..3050.01 rows=1000 width=8) Merge Cond: (big.b = lowp.l) -> Index Scan Backward using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan Backward using lowpi on lowp (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join highm on b=h order by b; QUERY PLAN ------------------------------------------------------------------------------ Merge Join (cost=2968.49..3057.34 rows=1000 width=8) Merge Cond: (big.b = highm.h) -> Index Scan using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan using highmi on highm (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join highm on b=h order by b desc; QUERY PLAN --------------------------------------------------------------------------------------- Merge Join (cost=298.67..387.53 rows=1000 width=8) Merge Cond: (big.b = highm.h) -> Index Scan Backward using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan Backward using highmi on highm (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join high on b=h order by b; QUERY PLAN ------------------------------------------------------------------------------ Merge Join (cost=3267.82..3355.97 rows=1000 width=8) Merge Cond: (big.b = high.h) -> Index Scan using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan using highi on high (cost=0.00..43.25 rows=1000 width=4) (4 rows) explain select * from big join high on b=h order by b desc; QUERY PLAN --------------------------------------------------------------------------------------- Merge Join (cost=0.05..88.19 rows=1000 width=8) Merge Cond: (big.b = high.h) -> Index Scan Backward using bigi on big (cost=0.00..3050.26 rows=100000 width=4) -> Index Scan Backward using highi on high (cost=0.00..43.25 rows=1000 width=4) (4 rows)