Показать сообщение отдельно
Старый 15.11.2005, 16:30   #9  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Наличие индекса DATAAREAID снижает скорость выполнения запроса в 50 раз (24 ч. и 30 мин.).
Цитата:
select level,A_TYPE_COD, A_TYPE_NAME
from bmssa.A_TYPE A .....
1) Попробуй собрать статистику. Как я понимаю, в твоем случае полное сканирование таблицы более выгодно, чем доступ по индексу. Хм... У тебя большая часть записей принадлежит этой компании (tst) ? В любом случае, я начал бы со сбора статистики. Кстати план запроса ты так и не привел - поэтому все что я пишу - это гадание на кофейной гуще.

2) Если после сбора статистики Oracle по прежнему стремится использовать индекс, а ты уверен, что это не лучшая стратегия - можно воспользоваться хинтом и указать Oracle, чтобы он не использовал индекс в данном запросе.

3) Кроме того, можно использовать Oracle Outline (Стабилизация плана запроса), когда ты для любого запроса можешь указать БД способ его выполнения.