0
如何將當前在WHERE
子句AND subMainTable.ID = MainTable.ID
中的聯接移動到FROM
子句中。在WHERE子句中使用別名FROM FROM子句中的子查詢加入
由於存在別名的方式,我似乎無法將其移動到那裏。
這是一個工作查詢,我已經重命名並刪除了與問題無關的部分。
SELECT
ID
,DETAILS
,ENTRYDATE
,ISNULL(LastBalance, 0) + (
SELECT SUM(VAL)
FROM tempData subMainTable
LEFT OUTER JOIN FinanceTable f ON subMainTable.ID = f.accId
AND subMainTable.TRANS_ID = f.txnID
WHERE subMainTable.TRANS_ID <= MainTable.TRANS_ID
AND subMainTable.ID = MainTable.ID
AND f.txnID IS NULL
) AS Balance
FROM
(SELECT MainTable.*
FROM tempData MainTable LEFT JOIN FinanceTable FinTable ON
(MainTable.ID = FinTable.accId
AND MainTable.TRANS_ID = FinTable.txnID)
WHERE (FinTable.accId IS NULL AND FinTable.txnID IS NULL)
) AS MainTable ...
一個嘗試沒有它不會工作,SUM(VAL)不具有一組 – Paparazzi