【发布时间】:2019-04-08 13:18:23
【问题描述】:
给定一个类似这样的数据集:
ccy | time | fxrate
GBP | 11 | 1.2
EUR | 21 | 1.4
CHF | 9 | 3.1
GBP | 15 | 1.1
EUR | 20 | 1.5
CHF | 1 | 3.0
CHF | 7 | 3.0
GBP | 20 | 1.9
我想获取每个 ccy 的最新 fxrates(按“时间”):
ccy | time | fxrate
GBP | 20 | 1.9
EUR | 21 | 1.4
CHF | 9 | 3.1
是否可以通过单个 sql 查询获取这些数据?我的技能让我失望了。我想我需要 GROUP BY ccy ..?最大(时间)在哪里 ..?限制 1 ..?救命!
[编辑] 使用 postgresql
【问题讨论】:
-
“时间”列
-
我没有意识到那些整数值是时间戳。
-
@jarlh 谢谢 - 我只是想尽可能地简化数据集。也许太多了。
标签: sql postgresql group-by greatest-n-per-group