我有一个名为Past_Wires的表,看起来像这样(部分)
Eff_Date | Portfolio | Balance
6/13/2017 0JR 10000
6/13/2017 S25 10000
6/14/2017 0JR 0
6/14/2017 S25 20000
我想运行一个查询,将每个投资组合的余额与之前日期的余额(希望是昨天的日期)进行比较并返回差异。我很确定这需要在VBA中完成(我可以做)并且不能在查询本身中完成,但想知道是否有人有想法。
答案 0 :(得分:1)
JOIN
表格本身。
像
这样的东西SELECT a.Balance as oldBalance, b.Balance as newBalance, a.Eff_Date as OldDate, b.Eff_Date as NewDate
FROM Past_Wires as a
INNER JOIN Past_Wires as b ON a.Portfolio = b.Portfolio AND a.Eff_Date<b.Eff_Date
您还可以在DateDiff('d',a.Eff_Date,b.Eff_Date) = 1
子句中使用WHERE
来仅比较后续日期。