Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.21;
Скачать: CL | DM;

Вниз

Будет ли задействован индекс...   Найти похожие ветки 

 
tovSuhov ©   (2002-02-21 12:08) [0]

...который я создал для таблицы на основе трех полей, если в условии select`а я использую только два из них?


 
Johnmen ©   (2002-02-21 12:24) [1]

Точный ответ знает только сервер, а для предположений надо почитать доку по Oracle.


 
EAlexander ©   (2002-02-21 13:02) [2]

Будет, если в select они перечеслены также как и в индексе.
P.S. есть sql navigator for oracle, там есть нормальный анализатор, который показывает как будет выполняться запрос - просто и доступно.


 
Внук ©   (2002-02-21 13:41) [3]

>>EAlexander © "Будет, если в select они перечеслены также как и в индексе"
Я бы не стал говорить так категорично. В первую очередь это зависит от подсказки оптимизатору (оптимизация по стоимости Cost или по правилам Rule, или, например, First Rows) и т.д. Проще всего в каждом конкретном случае посмотреть план запроса и не мучаться предположениями.


 
EAlexander ©   (2002-02-21 15:36) [4]

>>Внук
я имел в виду стандартные настройки оптимизации (просто редко кто их меняет)
про хинты - я думаю автор не знает, что это такое, иначе не задовал бы такой попрос.
Оптимизацию по стоимости (вместе со сбором статистики) тоже лучше не использовать (она у Ora не самая сильная, просто кричали громко - про 9i не говорю - не пробовал), поскольку у разработчика м.б. одна база, а пользователя другая. надежней жестко прошивать через хинты, какие индексы лучше использовать.

p.s. чтобы ora работала всегда и быстро нужен грамотный админ, а иначе не угадаешь, что пользователю в голову предет.
А на счет плана - это верно. :)
НИКОГО НЕ ХОТЕЛ ОБИДЕТЬ.


 
Внук ©   (2002-02-21 15:49) [5]

>>EAlexander
Согласен почти полностью, особенно насчет админа :)
Только вот насчет оптимизации по стоимости - были случаи, когда единственно это и спасало. Быстродействие повышалось в ДЕСЯТКИ (50-60) раз. Только проявляется это на ОЧЕНЬ больших базах.


 
EAlexander ©   (2002-02-21 16:09) [6]

>>Внук
Про оптимизацию
1. В версии 7.хх ее не было
2. В версии 7.4.3 появилась, но ее использовать нельзя - сам Ora это говорил, но не открытым текстом
3. в версии 8 они ее доработали и собираются отказаться от оптимизации по правилам, но у них проблемы из-за этого в своих же разратотках.
4. IMHO, просто когда пишешь на своих данных - там есть статистика и все правильно работает, а у заказчика ее запустили полгода назад, она собрала ТЕ данные, а потом забывают обновлять. а прога работает дальше и ничего об этом не знает.

P.S. не люблю надеяться на то что за меня подумает Oracle как надо. как правило это так, но когда не так - билет в зубы и к заказчику (вся территория России). я конечно люблю путешествовать не за свой счет, но не до такой же степени. :)


 
Desdechado ©   (2002-02-22 10:41) [7]

2 tovSuhov © (21.02.02 12:08)
вероятнее всего будет, за исключением, когда первым в индексе стоит поле, не используемое в этом запросе



Страницы: 1 вся ветка

Текущий архив: 2002.03.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
6-66939
Muxec
2002-01-03 20:31
2002.03.21
Internet components


14-66969
Tosov
2002-02-06 17:21
2002.03.21
Сколько стоит час работы


3-66741
EternalWonderer
2002-02-20 11:45
2002.03.21
Backup


7-67022
nika_rgups
2001-12-18 21:00
2002.03.21
MP3 coder


3-66746
skiph
2002-02-12 09:03
2002.03.21
INSERT в MS SQL7.0