有處理客戶付款和計算餘額的應用程序。假設客戶的餘額爲910.09美元。代理登錄到應用程序會向客戶申請15.45美元。現在剩下的餘額是894.64美元。用於比較支付餘額的查詢
後來,代理人申請了另一筆33.65美元的付款。餘額現在是894.64 - 33.65 = 860.99。
那麼,有一個繼承過程(比如說Process X),每次應用一次付款時,它會在開始時爲我的表填充所有在每次處理時應用的付款。
CREATE TABLE CUSTOMER_PAYMENTS
(
CUSTOMER_NO NUMBER,
PAYMENT_DATE DATE,
PAYMENT_AMT NUMBER(20,4),
REM_BALANCE NUMBER(20,4)
)
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
SET DEFINE OFF;
Insert into CUSTOMER_PAYMENTS
(CUSTOMER_NO, PAYMENT_DATE, PAYMENT_AMT, REM_BALANCE)
Values
(4926, TO_DATE('05/30/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), -15.45, 894.64);
Insert into CUSTOMER_PAYMENTS
(CUSTOMER_NO, PAYMENT_DATE, PAYMENT_AMT, REM_BALANCE)
Values
(4926, TO_DATE('05/30/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), -15.45, 860.99);
Insert into CUSTOMER_PAYMENTS
(CUSTOMER_NO, PAYMENT_DATE, PAYMENT_AMT, REM_BALANCE)
Values
(4926, TO_DATE('05/30/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), -33.65, 860.99);
COMMIT;
這就是我的表格在Process X運行兩次之後變成的東西。現在,我的挑戰是確定獨特的付款。如何在應用付款後比較餘額,看看是否真的是這個數字,如果不是,我會說這是重複的?
在這種情況下,第3行894.64 - 15.45!= 860.99。因此,第2行15.45是重複的。
在此先感謝。
您的Customer_Payments表是否有一個主鍵或任何可以指示付款插入的順序的東西? – Gerrat
沒有。同樣,這是從第三方繼承的。 – CFNinja
你說「第三排......因此,第二排是重複的」。一旦進入分貝,沒有第三排或第二排,除非你要訂購結果。對於@Gerrat問題,您需要一種理智的方式來區分付款。我不會說我對Process X的看法:-) – tbone