Как ускорить запрос
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)
{
incomeValue += RPayTrans.amount;
incomePercentage = RPayRateTable::find(RpayTaxParameters::find().incomePercentage).GetValue(RPayTrans.sourceDate,emplId)/100;
discountValue += round(RPayTrans.amount * incomePercentage,RpayTaxParameters::find().taxRound);
}
Подскажите как упростить и ускорить выполнение такого запроса???
|