select * from TA as a where a.field_0 in (select field_1 from TB)
可以写为:
select * from TA as a wher exists(select * from TB where field_1=a.field_0)
而
select * from TA as a inner join TB as b on a.field_0=b.field_1
实际上可以写为
select * from TA as a wher exists(select * from TB where field_1=a.field_0)
select * from TB as b wher exists(select * from TA where field_0=b.field_1)
这完全取决于索引在哪个字段上,当两个字段都有索引时则它的统计信息(哪一个索引到的叶子数据少)则用来选择谁放在前面。