微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-按最高或最低值选择不同

我正在使用MySQL / PHP5建立一个田径排名数据库,因此我正在努力寻找最佳方法来按最高价值查询每位独特运动员的成绩.

只是

SELECT distinct name, event
FROM results

样本数据库

name      | event | result
--------------------------
athlete 1 | 40    | 7.43
athlete 2 | 40    | 7.66
athlete 1 | 40    | 7.33
athlete 1 | 60    | 9.99
athlete 2 | 60    | 10.55

因此,假设在这种情况下,我想根据我尝试的最佳表现来对40m短跑比赛的运动员进行排名

SELECT distinct name, event
FROM results
WHERE event = 40
ORDER by result DESC

但是唯一选项仅留下运动员的第一项成绩(7.43),而不是最佳成绩(7.33).除了首先创建临时表(首先对结果进行排序,然后对临时表执行选择)之外,还有其他简便的方法吗?

解决方法:

您可能对分组依据感兴趣:

SELECT name, min(result) as result
FROM results
WHERE event = 40
GROUP BY name

这样可以使每个运动员获得最佳成绩.

spencer所建议,您还可以通过添加以下命令来排序列表:

ORDER BY min(result) ASC

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐