我有一个包含日期和价格的表格,我正在尝试选择两个日期之间的范围,但我还想在结束日期之后添加 n 个额外的行。
这是一个数据样本:
2013-01-09 29.67, 2013-01-08 29.51, 2013-01-07 28.69, 2013-01-04 28.01, 2013-01-03 27.88, 2013-01-02 27.44, 2012-12-31 26.20,
例如我在做:
SELECT *
FROM $table_name
WHERE date between '2013-01-09' AND '2013-01-04'
ORDER BY date DESC
我想要做的是额外添加 3 行(不是天,因为你可以看到它们不是连续的)所以像 2013-01-04 加上 3 行到 2012-12-31 结束。
我希望我很清楚,因为即使只是解释问题也很困难,想象一下尝试在网上找到解决方案!
按要求更新。
所以我会尝试改写和简化我遇到的问题。忘掉我到目前为止写的所有东西,从一个新的观点开始。我将把我遇到的问题分成两个步骤。此外,我将使用更简单的数字作为示例。新数据表:
2013-01-09 7 2013-01-08 1 2013-01-07 9 2013-01-04 1 2013-01-03 8 2013-01-02 5 2012-31-12 6
我想计算给定日期范围内这些值的平均值。因此,如果数据范围是 2013-01-09 到 2013-01-03 并且周期 2 的平均值,则数据将如下所示:
2013-01-09 7 4 2013-01-08 1 5 2013-01-07 9 5 2013-01-04 1 4.5 2013-01-03 8 6.5 2013-01-02 5 不适用
为此,我没有问题。问题就出现在这里。请注意,对于范围的第一个日期,我无法计算周期 2 的平均值,因为我之前没有数据选择。所以问题是,我如何在日期范围之后选择 1 个额外点(特别是 2012-31-12 的数据),以便我也可以计算 2013-01-02 的平均值?
谢谢你们的时间。