Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Будет ли задействован индекс... [D5, Oracle]


tovSuhov ©   (2002-02-21 12:08:00) 

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


Desdechado   (2002-02-22 10:41:00) [1]

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


EAlexander   (2002-02-21 16:09:00) [2]

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

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


Внук   (2002-02-21 15:49:00) [3]

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


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

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

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


Внук   (2002-02-21 13:41:00) [5]

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


EAlexander   (2002-02-21 13:02:00) [6]

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


Johnmen   (2002-02-21 12:24:00) [7]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо