【发布时间】:2014-06-06 07:01:46
【问题描述】:
我有一个名为historical_currencies_rate 的表,我在其中保存了一些已知货币的最近 8 年汇率。例如(欧元兑美元)。表格是这样的
+---------------------------+---------------+------------+
| rate_date | currency_pair | rate |
+---------------------------+---------------+------------+
| 2006-01-01 | EUR-USD | 1.1797 |
| 2006-02-01 | EUR-USD | 1.1826 |
| 2006-03-01 | EUR-USD | 1.1875 |
| 2006-04-01 | EUR-USD | 1.2083 |
| 2006-05-01 | EUR-USD | 1.2088 |
| 2006-06-01 | EUR-USD | 1.2093 |
| 2006-07-01 | EUR-USD | 1.2093 |
| 2006-08-01 | EUR-USD | 1.2093 |
| 2006-01-01 | JPY-USD | 0.01275 |
| 2006-02-01 | JPY-USD | 0.01275 |
| 2006-03-01 | JPY-USD | 0.01275 |
| 2006-04-01 | JPY-USD | 0.01275 |
| 2006-05-01 | JPY-USD | 0.01275 |
| 2006-06-01 | JPY-USD | 0.01275 |
| 2006-07-01 | JPY-USD | 0.01275 |
| 2006-08-01 | JPY-USD | 0.01275 |
| 2006-01-01 | GBP-USD | 1.559 |
| 2006-02-01 | GBP-USD | 1.559 |
| 2006-03-01 | GBP-USD | 1.559 |
| 2006-04-01 | GBP-USD | 1.559 |
| 2006-05-01 | GBP-USD | 1.559 |
| 2006-06-01 | GBP-USD | 1.559 |
| 2006-07-01 | GBP-USD | 1.559 |
| 2006-08-01 | GBP-USD | 1.559 |
| 2006-01-01 | AUD-USD | 1.0515 |
| 2006-02-01 | AUD-USD | 1.0515 |
| 2006-03-01 | AUD-USD | 1.0515 |
| 2006-04-01 | AUD-USD | 1.0515 |
| 2006-05-01 | AUD-USD | 1.0515 |
| 2006-06-01 | AUD-USD | 1.0515 |
| 2006-07-01 | AUD-USD | 1.0515 |
| 2006-08-01 | AUD-USD | 1.0515 |
| 2006-01-02 | EUR-USD | 1.2092 |
| 2006-02-02 | EUR-USD | 1.2066 |
| 2006-03-02 | EUR-USD | 1.2061 |
| 2006-04-02 | EUR-USD | 1.2061 |
| 2006-05-02 | EUR-USD | 1.2061 |
| 2006-06-02 | EUR-USD | 1.1981 |
| 2006-07-02 | EUR-USD | 1.1973 |
| 2006-08-02 | EUR-USD | 1.1948 |
+---------------------------+---- ----------+------------+
在这里,我向您展示了 2006 年最多 8 天和 2006 年的少数货币数据,但我有截至 2013 年 30 天数据的 18 种货币的庞大数据。
我的查询是我想要一个包含特定货币每月平均汇率的数组。例如,EUR-USD 在我的示例中,January 月份的平均值是 1.19935,JPY-USD 是 0.01275,GBP-USD 是 1.559,EUR-USD 月份的平均值是 February是1.2030375等
我想要EUR-USD 的平均值数组,或者可能是每个月的其他货币对,即。应该是这样的
`[1.19935, 1.2030375, ......]`
查询结果 = [avg. EUR-USD 的 January, 2006 ,平均值。 EUR-USD 的 February, 2006,......,平均。 EUR-USD for January, 2013, .....] 等长达 8 年。
请帮助我在单个查询中编写此内容。谢谢
【问题讨论】:
-
select avg(rate) ... group by currency_pair ,year(rate_date)*12+month(rate_date) ?
-
@ArmelLarcier 是的,我试过
SELECT avg(rate) as avg FROMhistorical_currencies_rate` 哪里(月 >= '2006-01-01' 和月 EUR-USD)` 但是这给了我 1 个月的平均时间。 -
8 x 18 x 365 = 52560 !!我的朋友,我们对“巨大”的定义非常不同。这是“小”!