Показать сообщение отдельно
Старый 27.04.2006, 07:56   #1  
Янка
Гость
 
n/a
Оптимизация запроса
Подскажите, кто сталкивался с такой проблемой! Как можно оптимизировать такой запрос:
while select sum(amount),payPeriod,sourceDate from RPayTrans group By sourceDate
where RPayTrans.payPeriod == payPeriod &&
RpayTrans.PayPeriod <= RpayParameters::PayPeriod()
exists join RPayTable
where RPayTable.payCtype == RPayTrans.payCtype &&
RPayTable.rpayTaxIncomeCode == incomeCode
exists join emplTableLocal
where emplTableLocal.emplId == RPayTrans.emplid &&
(emplTableLocal.payMainEmplId_Ru == emplId ||
emplTableLocal.emplId == emplId)
{
.....................
}
Пробовала через join count(recid) особо не помогло, все равно сканирует таблицы RPayTable и emplTable много и долго. Убирать join с emplTable не можем, так как используем поле payMainEmplId_RU. Какие есть варианты?