这是一个令人困惑的SQL问题(至少对我来说)涉及GROUP BY
和AGGREGATES ...会爱上任何帮助。表5中最新5行的聚合函数(SUM)
我在一个网站上记录骑自行车和骑手的信息。我们有一张桌子,其中包含骑手ID,骑车日期和骑行距离。我想要显示最新的游乐设施,距离以及每个车手的总距离。这是我的SQL和输出(其中id
是骑手ID):
+--------+---------------------+----------+ | id | dated | distance | +--------+---------------------+----------+ | 101240 | 2012-11-30 00:00:00 | 250 | | 101332 | 2012-11-22 00:00:00 | 31 | | 101313 | 2012-11-21 00:00:00 | 15 | | 101319 | 2012-11-21 00:00:00 | 25 | | 101320 | 2012-11-21 00:00:00 | 56 | +--------+---------------------+----------+
这是很容易得到有:
SELECT id, dated, distance FROM rides ORDER BY dated LIMIT 5
似乎我无法弄清楚是获得车手总累计对于这些最新的游乐设施...基本上:
SELECT sum(distance) FROM rides GROUP BY id
是否有可能在SQL中处理所有这些而不必执行某些程序化的操作?我试过做一些子查询和联接,但无济于事!
在此先感谢SO社区。
我不明白你的问题。 “基本上:SELECT总和(距离)从游乐设施GROUP BY ID。”那有什么问题? –
如果你的意图是总结距离最近五次运行**每个骑自行车的人**你可能想检查排名最高的答案[这里](http://stackoverflow.com/questions/2129693/mysql-using-limit-within -group-通过对获得正的结果,每个组)。 –
那么这个sql服务器还是? –