我有一張桌子,上面有許多來自不同客戶的分期付款。每個客戶都有可用餘額。sql - 顯示我可以支付的所有分期付款
我想顯示客戶可以支付的所有分期付款。
顧客1與可用餘額400 顧客2的可用餘額500
分期表:
Customer ID Instalment amount Available
1 150 400
1 150 400
1 150 400
1 150 400
1 150 400
1 150 400
1 150 400
2 200 500
2 200 500
2 200 500
2 200 500
2 200 500
2 200 500
下面是我想
Customer ID Instalment amount Available
1 150 400
1 150 400
2 200 500
2 200 500
代碼中的結果下面不起作用
DECLARE @DrACAvailable decimal,
@PayAmount decimal,
@RunningTotal decimal
SET @RunningTotal = 0
DECLARE rt_cursor CURSOR
FOR
SELECT T2.PayAmount, T2.DrACAvailable
FROM LoanAutoPayTransactions T2
INNER JOIN LoanAutoPayTransactions T1 on T2.LRAC=T1.LRAC
OPEN rt_cursor
FETCH NEXT FROM rt_cursor INTO @PayAmount, @DrACAvailable
WHILE @@FETCH_STATUS = 0
BEGIN
SET @RunningTotal = @RunningTotal + @PayAmount
IF @RunningTotal >= @DrACAvailable BREAK
UPDATE LoanAutoPayTransactions SET [email protected] WHERE StartDate=(SELECT MIN(T2.StartDate) FROM LoanAutoPayTransactions T2 WHERE T2.LRAC=LRAC)
FETCH NEXT FROM rt_cursor INTO @PayAmount, @DrACAvailable
END
CLOSE rt_cursor
DEALLOCATE rt_cursor
我不明白結果如何與源表相關。結果如何選擇每個客戶的兩行?你能詳細解釋一下嗎? – jpw
ID爲1的客戶可用餘額爲400歐元。 400歐元可以支付多少次分期付款。從7分期付款只有2可以支付。 150 + 150 = 300歐元。他無法支付3期分期付款,因爲150 + 150 +150 = 450歐元 – Leventis1984
還有一些問題:您是否不希望日期(我猜是開始日期)也無法分辨客戶可以分期付款工資? LRAC是客戶ID嗎? – jpw