【发布时间】:2011-03-28 16:48:26
【问题描述】:
我有 2 张桌子。一个具有保持不变的原始数量。第二个表格列出了随着时间推移应用的部分金额与第一个表格中的原始金额相比。
数据库表:
***memotable***
ID [primary, unique]
Amount (Orginal Amount)
***transtable***
ID [many IDs in transtable to single ID in memotable]
AmountUsed (amount applied)
ApplyDate (date applied)
我想在一次选择中查找 ID、自上周以来使用的金额 (ApplyDate > 2011-04-21)、迄今为止使用的金额。
应该出现在结果中的唯一行是自上周以来使用的金额(ApplyDate > 2011-04-21)。
我一直在尝试获取迄今为止使用的金额的总和,因为这需要包括 ApplyDate > 2011-04-21 之外的 AmountUsed 值。
【问题讨论】:
-
SELECT A.ID, A.Amount, SUM(B.AmountUsed) AS AmountUsedWeek, (SELECT SUM(B.AmountUsed) AS AmountUSEdTotal FROM transtable C WHERE A.ID = C.ID) FROM memotable A,transtable B WHERE B.ApplyDate > '2011-02-07' AND A.ID = B.D GROUP BY A.ID, A.Amount