|
14.03.2019, 14:23 | #1 |
Участник
|
Так я о том и говорю, что exists join где условие накладывается на привязанную таблицу - это по сути полный скан таблицы заказов при открытии формы(т.е. ты находишь сначала по индексу записи в фильтрующей таблице, потом ищешь все заказы которые под это попадают(так так на формах обычно сортировка по коду заказа), сортируешь их, и выводишь первые 10. Это отлично работает на малых объемах, но начиная с сотни тысяч уже тормозит и никакими индексами это не победить
|
|
14.03.2019, 14:33 | #2 |
Moderator
|
Цитата:
Сообщение от trud
Так я о том и говорю, что exists join где условие накладывается на привязанную таблицу - это по сути полный скан таблицы заказов при открытии формы(т.е. ты находишь сначала по индексу записи в фильтрующей таблице, потом ищешь все заказы которые под это попадают(так так на формах обычно сортировка по коду заказа), сортируешь их, и выводишь первые 10. Это отлично работает на малых объемах, но начиная с сотни тысяч уже тормозит и никакими индексами это не победить
|
|
14.03.2019, 14:42 | #3 |
Участник
|
Цитата:
Сообщение от fed
Сиквел может оказаться достаточно умным чтобы сначала отобрать записи в этой дополнительной таблице и потом уже результат заджойнить через nested look к таблице заказов. Более того - он может в этой дополнительнойтаблице отобрать первые 10 или 20 записей по нужному подразделению и потом их быстренько по кластерному ключу приджойнить nested loop к таблице заказов.
так а это как поможет, выбирать то надо по "или", у пользователя может быть несколько подразделенией и т.п. |
|
14.03.2019, 15:22 | #4 |
Moderator
|
Цитата:
Сообщение от trud
Так он так и делает. т.е. у тебя миллион заказов и 3 подразделения. предположим у пользователя настоено 1. т.е. вначале отбирается 300тыс заказов в фильтрующей таблице, потом проверяет все эти 300к заказов(на форме же как правило указывается сортировка и отказывать от нее никто не хочет), из них выбираются 10.
так а это как поможет, выбирать то надо по "или", у пользователя может быть несколько подразделенией и т.п. |
|
14.03.2019, 15:31 | #5 |
Moderator
|
|
|
|
|