(PHP中的sql查询)
$sqlAS = "SELECT * FROM results, players WHERE results.codeplayer=players.codeplayer GROUP BY results.codeplayer ORDER BY points Desc, time Asc ";
我希望查询生成一个列表,其中只有每个玩家的最佳结果(数据库对每个玩家都有几个结果)。
它工作正常,除了我为每个玩家获得了最好的积分结果,但没有按最佳时间排序,这反映在 SQL 的 SORT BY 部分
例如,如果约翰有以下结果
400 points 5:00 time // in minutes
400 points 4:00 time
500 points 5:00 time
500 points 4:00 time
300 points 2:00 time
我明白了
John - 500 points - 5:00
但是我需要
John - 500 - 4:00
对于 John 来说,这是用更少时间获得的最好成绩。
我猜这 "ORDER BY points Desc, time Asc"
会负责。
似乎GROUP BY
无论时间如何,都将最好的结果放在首位
有任何想法吗?