Table 是 index/full 基于它加入的 table 扫描的

Table is index/full scanned based on the table it is joined to

Table 是 index/full 扫描基于 table 它加入到

这里,TableA使用index

扫描
select * from B 
inner join A ON A.ID = B.ID
where
B.ID = '&ID';

但是当我这样改的时候

select * from C 
inner join A ON A.ID = C.ID
where
C.ID = '&ID';

Table A 已完全扫描,这会影响性能

收集所有这些 table 及其索引的统计信息。不确定为什么会这样。

看起来只有当连接的数据类型相似时,oracle 才会使用索引。在我的例子中,c.ID 是一个 varchar2,A.ID 是一个整数。