未使用索引

时间:2019-02-18 16:39:29

标签: sql oracle

我有两个不同的表ACCOUNTSSTATUS

ACCOUNTS:
========
ACCT_NUM
ACCT_TYPE
BALANCE
ACCT_NAME
BRANCH
BANK_ID

STATUS:
=======
ACCT_NUM
ACCT_STATUS
STATUS_DATE
BANK_ID

帐户表有超过一百万条记录,其中ACCT_NUM作为索引,BANK_ID作为一个索引。 STATUS表具有一百万条记录,并具有ACCT_NUMBANK_ID索引。

我想选择所有状态为“ I”的非活动状态,因此我编写了如下查询。

SELECT A.ACCT_NUM,A.BALANCE,B.ACCT_STATUS 
FROM ACCOUNTS A, STATUS B
WHERE A.ACCT_NUM = B.ACCT_NUM
AND A.BANK_ID = B.BANK_ID

从说明计划中,我可以看到STATUS索引没有被使用并且进入表完全访问权限。 谁能解释为什么不使用索引以及如何提高此查询的性能。

0 个答案:

没有答案