我有一个包含四列的Ms Access表; PledgeID,参考,已付费和余额。一个PledgeID可能有多个记录。我需要一个查询,该查询将帮助我仅获取每个PledgeID的最后一条记录的余额总和。最后一个PledgeID将是具有最高引用的那个。我附了一张桌子的照片,方便参考。
答案 0 :(得分:0)
您可以使用以下SQL:
SELECT T2.PledgeID
, T2.REF
, T2.Balance
FROM (
SELECT PledgeID
, MAX(Ref) AS REF_RETURN
FROM MyTable
GROUP BY PledgeID
) T1 INNER JOIN MyTable T2 ON T1.REF_RETURN = T2.REF
将Ref
字段限制为仅数字-1
,2
而不是PID/2018/00007-1
和PID/2018/00007-2
可能会更容易。
答案 1 :(得分:0)
您可以使用子查询来找到每个PledgeID的最新余额,并对这些余额求和:
SELECT Sum(Balance)
FROM Balances
WHERE Ref = (SELECT Max(Ref) FROM Balances AS b WHERE PledgeID = Balances.PledgeID);
查看您的示例表,结果似乎是0.00
。