Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
27.05.2017, 05:57
|
|||
---|---|---|---|
Непонятки с планом |
|||
#18+
FB 2.5.6. Проверял на 3.0.2 - то же самое. Проблема с двойным соединением и условием по третьей таблице. Запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Код: plaintext
Enchanced Info: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Но стоит только добавить LEFT JOIN, и FB начинает перебирать абонентов натуралом: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Код: plaintext 1.
Enchanced Info: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Меняю последовательность таблиц в секции FROM: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Код: plaintext
Получаю такой же план и такую же статистику, как в первом случае. Это так и должно быть или это баг оптимизатора? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.05.2017, 07:29
|
|||
---|---|---|---|
Непонятки с планом |
|||
#18+
древний баг, давно в трекере. Все INNER-ы по возможности надо группировать вместе и размещать до LEFT-ов - так остается вероятность вменяемого плана. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.05.2017, 07:54
|
|||
---|---|---|---|
Непонятки с планом |
|||
#18+
dimitr, Спасибо за ответ, теперь стало понятным составление плана в других запросах. Учту это в генераторе запросов. А есть примерные сроки, когда это пофиксите? Или это непросто? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=40&mobile=1&tid=1561567]: |
0ms |
get settings: |
13ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
17ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 311ms |
total: | 444ms |
0 / 0 |