Nikolay Ponomarenko wrote:

Только я вот чесс гря не понимаю, на что может опираться оптимизатор, выбирая иной план. Ну разве что на размер таблицы?

Размер считается в обоих версиях приблизительно одинаково. В данном случае разница лишь в посегментном учете селективности.

Ведь если судить по качеству индексов, то он берет, в принципе, оптимальный вариант. И в полуторке оно работало неверно, используя только информацияю о хорошей селективности композита?

Именно так. И на (в принципе худший) вариант наложилось наличие фильтра по малой таблице, который наверняка и дал ускорение.

Надо бы какую-то эвристику ввести для неиндексированных предикатов, тогда результат мог бы быть более предсказуемым. Она как бы есть, но сильно зачаточная :-) Подумаю над этим.


--
Дмитрий Еманов

Ответить