【发布时间】:2009-12-22 16:12:29
【问题描述】:
我正在尝试将我的一个子查询的结果用于另一个子查询,但它不起作用。
这是查询:
SELECT t.TenantName,
(SELECT SUM(Amount)
FROM tblTransaction
WHERE Amount > 0
AND TransactionDate >= '12/01/09'
AND TransactionDate <= '12/31/09'
AND TenantID = t.ID
AND TransactionCode = trans.TransactionCode) AmountPaid,
(SELECT SUM(Amount)
FROM tblTransaction
WHERE tblTransaction.TransactionCode = trans.TransactionCode
AND tblTransaction.TenantID = t.ID) - AmountPaid AmountOwedTotal,
(SELECT SUM(Amount)
FROM tblTransaction
WHERE tblTransaction.TransactionCode = trans.TransactionCode
AND tblTransaction.TenantID = t.ID
AND Amount < 0 AND TransactionDate >= '12/01/09'
AND TransactionDate <= '12/31/09') AmountOwedThisMonth,
code.Description, trans.TransactionDate
FROM tblTransaction trans
LEFT JOIN tblTenantTransCode code
ON code.ID = trans.TransactionCode
LEFT JOIN tblTenant t
ON t.ID = trans.TenantID
WHERE trans.TransactionDate >= '12/01/09'
AND trans.TransactionDate <= '12/31/09'
AND trans.Amount > 0
抱歉,太复杂了。
我在哪里 (子查询) - AmountPaid SqlServer 抱怨 AmountPaid 不是有效的列名。如何访问它的子查询的结果?
【问题讨论】: