
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
09.04.2003, 17:43
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Cтоимостный оптимизатор при выборке данных делает full table scan. И действительно, делать это выгодней, чем пользоваться индексом. Как заставить его все-таки пользовать индекс. Пусть это будет медленней, но мне так нужно. Хинты не помогают. Есть ли вообще шанс заставить его работать так, как хочу я. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 17:53
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
вроде подсказку RULE испоьзуй если очень надо оптимизатор по правилам использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 17:54
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
читай про optimizer_index_caching и optimizer_index_cost_adj в init.ora например optimizer_index_caching=95 optimizer_index_cost_adj=5 Хинты ЗАСТАВЛЯЮТ использовать индекс, если это вообще возможно. Или неправильно хинт пишешь, или запрос такой что индекс не используется в любом из рассматриваемых оптимизатором вариантов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 17:57
|
|||
|---|---|---|---|
|
|||
оптимизатор всегда прав? |
|||
|
#18+
Запрос и "неработающие" варианты хинтов - в студию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 18:53
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
to ora600:Эти параметры я уже поставил, 95 и 1 соответственно.Он даже в этом случае не хочет индекс использовать и правильно делает, потому что записей в таблице мало и выгодней делать full scan. Вопрос был, можно ли заставить его пользоваться индексом, даже если, он думает иначе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 19:02
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Изначально запрос такой: Код: plaintext 1. 2. 3. ind1 = (f1,f2) - неуникальный индекс. Пытался делать с хинтом /*+FIRST_ROWS INDEX_ASC("t" "ind1")*/. Тоже TABLE ACCESS FULL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 19:05
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
/*+ index(ind1 to)*/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 19:15
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
>/*+ index(ind1 to)*/ ну уж правильно будет вот так: /*+ index(to ind1)*/ А индекс в запросе с хинтом не используется потому, что у вас эти поля не NOT NULL, или укажите в запросе: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 19:30
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Все поля в этой таблице описаны при создании как not null. Добавление is not null не помогло:( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 19:34
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Когда вместо select * делаю select f1,f2 индекс используется.Как только к этому добавляю еще какое-нибудь поле-full table scan. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 19:41
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
а можно полные примеры - запрос, план с костом, результат (если говорите, что небольшой)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 20:24
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Чудеса! Может вы в курсе такого дела? Вобщем выполняю запрос: Код: plaintext 1. 2. 3. 4. Его план: Код: plaintext 1. 2. 3. А изначально я выполнял запрос вот такой c синонимом: Код: plaintext 1. 2. 3. 4. И вот его план: Код: plaintext 1. 2. Надобно отказываться от синонимов? Но почему его это смущает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 20:28
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Oracle8i Designing and Tuning for Performance Release 2 (8.1.6) Part Number A76992-01 Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.04.2003, 20:30
|
|||
|---|---|---|---|
оптимизатор всегда прав? |
|||
|
#18+
Спасибо огромное!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&mobile=1&tid=1991077]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
194ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 463ms |

| 0 / 0 |
