請注意,我有2個表:添加perovious場量
我想從表中工資trnamt得到更新到tbl_emi在拍攝記錄,但量不應超過EMI量爲每個記錄中,例如在這種情況下,這是在薪水錶量1000應該被添加500到該第一記錄和另外500到第二記錄到tbl_emi表
tbl_emi
EMI DUEDT REC Acno
500 4/30/2014 500 123
500 5/30/2014 0 123
500 6/30/2014 0 123
slary
Acno Trnamt
123 1000
我用下面的查詢,但它仍然是在tbl_emi tbale中的rec字段加上工資表中的trnamt,但不應超過emi金額。
選擇QUERY1:要創建一個臨時表的accumlated EMI
select a.emi, a.duedt, a.rec, a.acno, coalesce(sum(b.emi),0) as emi_accumulated
into #accumulated_amount5
from tbl_emi a
left join tbl_emi b on a.acno = b.acno and b.duedt < a.duedt
group by a.emi, a.duedt, a.rec, a.acno;
QUERY2:要爲工資總額
select a.*, s.RECAMT as salary_amt
into #accumulated_amount_with_salary5
from #accumulated_amount5 a
inner join Tbl_Fin s on a.acno = s.CARDNO;
更新查詢1創建一個臨時表:要更新REC量
update #accumulated_amount_with_salary5
set rec = rec + case
when salary_amt < emi_accumulated then 0
when (salary_amt - emi_accumulated) < emi then salary_amt - emi_accumulated
else emi
end
更新查詢2
update t
set lastrecdate=(CAST(GETDATE() AS DATE)), rec = a.rec
from tbl_emi t
inner join #accumulated_amount_with_salary5 a on t.acno = a.acno and t.duedt = a.duedt
--Finance
請問SQL服務器2008年,這方面的工作,因爲它顯示我的錯誤:附近有語法錯誤訂購'。 – user2786306
你是如何創建topdate對象的? – user2786306
@ user2786306。 。 。這是一個錯字。它應該是'toupdate'。 –