|
![]() |
#1 |
Постигающий
|
![]()
Доброго времени суток..
есть у меня запрос подобный следущему X++: while select VendTrans where VendTrans.TransDate <= toDate && VendTrans.TransDate >= fromDate notexists join PaymentRequestLine where PaymentRequestLine.Voucher == VendTrans.Voucher join PaymentRequest where PaymentRequestLine.Code == PaymentRequest.Code && PaymentRequest.Status == "некий статус" X++: while select VendTrans where VendTrans.TransDate <= toDate && VendTrans.TransDate >= fromDate join RContractTable where RContractTable.RContractCode == VendTrans.RContractCode && RContractTable.CurOtdel == "0033" ![]() |
|
![]() |
#2 |
Участник
|
а так не получается?
X++: while select VendTrans where VendTrans.TransDate <= toDate && VendTrans.TransDate >= fromDate join RContractTable where RContractTable.RContractCode == VendTrans.RContractCode && RContractTable.CurOtdel == "0033" notexists join PaymentRequestLine where PaymentRequestLine.Voucher == VendTrans.Voucher join PaymentRequest where PaymentRequestLine.Code == PaymentRequest.Code && PaymentRequest.Status == "некий статус" |
|
|
За это сообщение автора поблагодарили: Андрей К. (1). |
![]() |
#3 |
Постигающий
|
Цитата:
Сообщение от belugin
![]() а так не получается?
X++: while select VendTrans where VendTrans.TransDate <= toDate && VendTrans.TransDate >= fromDate join RContractTable where RContractTable.RContractCode == VendTrans.RContractCode && RContractTable.CurOtdel == "0033" notexists join PaymentRequestLine where PaymentRequestLine.Voucher == VendTrans.Voucher join PaymentRequest where PaymentRequestLine.Code == PaymentRequest.Code && PaymentRequest.Status == "некий статус" |
|
![]() |
#4 |
Member
|
Попробуйте для начала notexists join опустить вниз.
__________________
С уважением, glibs® |
|
![]() |
#5 |
Участник
|
Если первый кусок кода работает, то при опущении нотэкзиста он может начать работать по другому (последний иннерджоин вылезет из скобок
|
|
![]() |
#6 |
Постигающий
|
Belugin, совершенно верно..В первом запросе иннер джойн относится к нотекзист джойну. Остается опробовать ваш вариант.
|
|
![]() |
#7 |
Участник
|
Запрос составлен, а дальше открываем план исполнения и вперед на оптимизацию плана!
__________________
Дайте мне точку опоры, и я переверну земной шар (Архимед) |
|
![]() |
#8 |
Программатор
|
Можно явно указать какие поля Вы хотите выбрать из таблиц. Это увеличит производительность. Попробовать с индекс хинтами.
Последний раз редактировалось Sada; 19.09.2007 в 17:23. |
|