ID Type Type_Description Amount Balance
41 85 incoming transaction 100 100
41 55 outgoing transaction 76.6 23.4
41 55 outgoing transaction 23.4 0
41 90 incoming transaction 24.1 24.1
41 55 outgoing transaction 14.19 9.91
41 63 Sweep Off Amount 9.91 0
42 85 incoming transaction 100 100
42 55 outgoing transaction 76.6 23.4
42 55 outgoing transaction 23.4 0
42 90 incoming transaction 24.1 24.1
42 55 outgoing transaction 14.19 9.91
42 63 Sweep Off Amount 9.91 0
我想从Trs_Amount计算余额,其中
Transaction_Type == 85表示(初始)进入交易和
Transaction_Type == 55一个外发交易
Transaction_Type == 90是临时信用,应该添加到余额(在交易级别)和
最后,我必须为每个ID创建一个行,其中包含剩余的金额(清除金额)Transaction_Type == 63。
答案 0 :(得分:0)
您还没有给我们任何可以使用的架构,所以我做出了合理的假设。
试试这个:
insert into Trs (Trs_ID, Trs_Type, Amount)
select * from (
select ID, 63, sum(amount * case when Trs_type = 55 then -1 else 1 end)
from Trs
group by ID, 63) x