我知道“选择与字段最大值相对应的记录”已被详尽回答,但我想知道为什么没有人建议使用 ORDER BY 子句来获取正确的行。
例如,我有这张表:
| other_field | target_field |
| 1 | 15 |
| 2 | 25 |
| 3 | 20 |
我想找到other_field
对应于最大值的值target_field
(例如,在这种情况下,我想找到 2)。
很多人建议使用 GROUP 和 JOIN,但我的第一个想法是使用:
SELECT other_field FROM table ORDER by target_field DESC LIMIT 1;
这有什么问题吗?我能想到的唯一问题是,排序可能需要更长的时间,然后才找到最大值(尽管另一方面,JOIN 也可能需要一段时间)。
谢谢!
编辑:抱歉,回复晚了,我是新来的,我期待收到一些电子邮件通知:)