Показать сообщение отдельно
Старый 10.01.2008, 14:25   #7  
Jabberwocky is offline
Jabberwocky
Microsoft Dynamics
Аватар для Jabberwocky
Сотрудники Microsoft Dynamics
 
274 / 307 (11) ++++++
Регистрация: 02.09.2005
Адрес: Москва
Цитата:
Сообщение от ansoft Посмотреть сообщение
Что если перестроить запрос так:

while select [fields] from inventTable
where inventTable.ItemType != .....
В данном случае необходимо также использовать forcenestedloop forceselectorder, чтобы цикл join'a начинался именно с InventTable. И еще попробуйте соптимизировать критерии выборки, например условие:

inventTrans.StatusReceipt == StatusReceipt::None && inventTrans.StatusIssue == StatusIssue::Sold

эквивалентно:

inventTrans.StatusIssue == StatusIssue::Sold ,

т.к. StatusReceipt и StatusIssue одновременно никогда не бывают не-None.

Аналогично,
inventTrans.DateFinancial
&& inventTrans.DateFinancial >= dateFrom && inventTrans.DateFinancial <= dateTo

проверка на непустую дату inventTrans.DateFinancial явно избыточна, если dateFrom и dateTo заведомо не пустые и т.д.
__________________
You should use Bing before asking dumb questions.