Ухудшение производительности запроса после добавления индекса
У меня есть запрос о том, какая часть SP выполняется довольно регулярно, и выполнение запроса заняло некоторое время, поэтому я решил взглянуть на него. Я сделал автоматическую трассировку по запросу, иэто была казнь возвращен план [вставлено в пастин из-за чрезмерного размера]
Я добавил индексы в таблицы, для которых выполнялся полный доступ к таблицам, и выполнил запрос. Производительность запросов была хуже, чем раньше, несмотря настоимость значительно ниже.
Почему это так, может кто-нибудь пролить свет на то же самое?
База данных - Oracle 10gR2 (выпуск 10.2.0.1.0).
Это запрос выполняется
SELECT DISTINCT CAC_FLEX_03, CAC_FLEX_04
FROM PCOM_CUST_PRACTICE_INFO A,
PGIM_ZIP_CODES C,
PGIM_PROD_TARIFF_DATA B,
PCOM_CODES_APPL_CODES D
WHERE A.PCPI_CUST_CODE IN ('002023', '002025')
AND C.ZC_ZIP_CODE = A.PCPI_PIN_CODE
AND C.ZC_CITY_CODE = A.PCPI_CITY
AND C.ZC_COUNTY_CODE = A.PCPI_COUNTY
AND C.ZC_STATE_CODE = A.PCPI_STATE
AND B.PTD_CVR_CODE = 'TF-001'
AND B.PTD_VALUE_SET2 = A.PCPI_STATE
AND B.PTD_VALUE_SET4 = A.PCPI_COUNTY
AND B.PTD_VALUE_SET5 = D.CAC_FLEX_03
AND D.CAC_FLEX_04 IS NOT NULL
AND ZC_STATE_CODE =
(SELECT POL_FLEX_04
FROM PGIT_POLICY
WHERE POL_SYS_ID = 541332)
AND B.PTD_VALUE_SET3 =
(SELECT POL_FLEX_01
FROM PGIT_POLICY
WHERE POL_SYS_ID = 541332)
AND CAC_TYPE = 'TERR-CODE'
AND CAC_FLEX_03 = 0;