Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Заставить видеть индекс  [new]
friz777
Member

Откуда: Город-герой Минск
Сообщений: 248
Есть запрос вида
select * from Info I where I.ID in (select p.Id from table1 p)


И есть две идентичные базы(схемы).
В одном случае поиск идет по индексы, а во втором фул скан.. как заставить оптимизатора видеть индекс?
29 ноя 12, 10:01    [13547465]     Ответить | Цитировать Сообщить модератору
 Re: Заставить видеть индекс  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
Наличие статистики?

А вообще в FAQ есть тема
https://www.sql.ru/faq/faq_topic.aspx?fid=344
29 ноя 12, 10:06    [13547487]     Ответить | Цитировать Сообщить модератору
 Re: Заставить видеть индекс  [new]
Stawros
Member

Откуда:
Сообщений: 21
friz777
Есть запрос вида
select * from Info I where I.ID in (select p.Id from table1 p)


И есть две идентичные базы(схемы).
В одном случае поиск идет по индексы, а во втором фул скан.. как заставить оптимизатора видеть индекс?

Если лень перестраивать запрос и не хочется использовать хинты можно попробовать -

select * from Info I where I.ID in (select p.Id from table1 p group by p.Id)
29 ноя 12, 10:11    [13547512]     Ответить | Цитировать Сообщить модератору
 Re: Заставить видеть индекс  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
Если лень перестраивать запрос и не хочется использовать хинты можно попробовать -

select * from Info I where I.ID in (select p.Id from table1 p group by p.Id)
от версии зависит...

Сообщение было отредактировано: 29 ноя 12, 10:27
29 ноя 12, 10:25    [13547569]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить