我有以下查询,它给出了投资组合的每日总价值。
SELECT RecDate, Sum(Mval) as TotalVal
FROM DailyVal
WHERE RecDate >= DateValue("1/1/2013")
GROUP BY RecDate;
它工作得很好,结果如下:
RecDate TotalVal
1/10/2013 4465
1/11/2013 4471
1/14/2013 4472
1/15/2013 4477
但是我想计算每一行的say1/11/2013
等之间的差异。1/10/2013
我通常INNER JOIN
在桌子上使用别名ON
theID - 1
并根据需要执行计算。不幸的是,在按 聚合时没有有意义的索引GROUP BY
。
我的问题是实际上是否有一种方法可以为查询提供索引,所以它看起来像:
ID RecDate TotalVal
1 1/10/2013 4465
2 1/11/2013 4471
3 1/14/2013 4472
4 1/15/2013 4477
这样我就可以采取正常的方法了。
否则,是否有更有效的方法来执行此任务?