【发布时间】:2013-10-10 06:24:26
【问题描述】:
我想查询最高点的排名,如果点相同,检查完成时间最短。我的桌子是
+-------------------------------------------------+
| | id | user_id | point | finishtime | week | |
+-------------------------------------------------+
| | 1 | G1 | 1560 | 55 | 1 | |
| | 2 | G1 | 1560 | 43 | 1 | |
| | 3 | G1 | 1530 | 55 | 1 | |
| | 4 | G2 | 1760 | 45 | 1 | |
| | 5 | G3 | 1760 | 46 | 1 | |
| | 6 | G3 | 1330 | 25 | 2 | |
| | 7 | G4 | 360 | 65 | 1 | |
| | 8 | G2 | 1760 | 50 | 1 | |
预期结果是
+-------------------------------------------------+
| | id | user_id | point | finishtime | week | |
+-------------------------------------------------+
| | 4 | G2 | 1760 | 45 | 1 | |
| | 5 | G3 | 1760 | 46 | 1 | |
| | 2 | G1 | 1560 | 43 | 1 | |
| | 7 | G4 | 360 | 65 | 1 | |
| | 6 | G3 | 1330 | 25 | 2 | |
我尝试为该点选择最大值,但它不会花费最短的完成时间。
我需要按唯一 user_id 的结果组,按最高点和最短完成时间获取顺序。
我需要使用 if else 语句吗?
【问题讨论】:
-
(删除了一个答案) - 为什么你只保留两行
point=1760? IE。标准是什么? -
有些人可以得到相同的分数,当分数相同时,我们看到第二个标准是最短时间。谁获得的时间最短,谁的排名高。可以是同一用户或不同用户
标签: mysql