2
我寫了下面的代碼,選擇從每個貸款餘額支付利息合計:SQL - JOIN聚合表與非聚合表
SELECT a.PARENTREF, a.INTEREST - Isnull(b.INTEREST,0) AS INTEREST FROM (SELECT PARENTREF, SUM(TOTAL) AS INTEREST FROM LG_011_BNCREPAYTR WHERE TRANSTYPE = 0 GROUP BY PARENTREF) a LEFT OUTER JOIN (SELECT PARENTREF, SUM(TOTAL) AS INTEREST FROM LG_011_BNCREPAYTR WHERE TRANSTYPE = 1 GROUP BY PARENTREF) b ON a.PARENTREF = b.PARENTREF
它帶來了類似下面的表格:
PARENTREF INTEREST 1 500.93 2 510.00 3 1200.90 4 500.93
現在,在數據庫中的另一個表保存其他有關貸款的信息,如貸款說明。該表的LOGICALREF
是該表中的PARENTREF
。這表如下:
LOGICALREF DESCRIPTION CURRENCYREF DUEDATE 1 CAR LOAN 0 2015-10-01 2 CONSUMER LOAN 2 2015-10-01 3 CAR LOAN 4 2015-10-01 4 CAR LOAN 3 2015-10-01
我想我的表,我提到的最後一個表合併,但由於某種原因,我得到了DESCRIPTION
,CURRENCYREF
和DUEDATE
作爲NULL
。我認爲由於我正在使用GROUP BY
而出現了問題,因爲如果我不彙總,這些功能將起作用。我想表如下:
PARENTREF INTEREST DESCRIPTION CURRENCYREF DUEDATE 1 500.93 CAR LOAN 0 2015-10-01 2 510.00 CONSUMER LOAN 2 2015-10-01 3 1200.90 CAR LOAN 4 2015-10-01 4 500.93 CAR LOAN 3 2015-10-01
非常感謝。