在不使用子查询的情况下选择最大值

时间:2018-01-29 20:35:37

标签: mysql

我有一个包含架构的表

Cars(make, model, country, horsepower, doors)

我需要确定表中哪些车具有最大的马力(允许系带)。

我的第一个想法是

SELECT model
FROM Cars
WHERE horsepower = MAX(horsepower)

但当然导致分组错误。

我尝试用ORDERHAVING做各种日益复杂的事情,我不再记得,但没有运气。

最终,我通过使用子查询来解决它:

SELECT model
FROM Cars
WHERE horsepower IN
    (SELECT MAX(horsepower) FROM Cars)

但由于某种原因,我无法摆脱这种黑客的感觉,并且有一种更好的方法(不使用子查询)。建议?

对于那些关心此类事物的人,是的,这是(或者更确切地说是)作业。但是我已经通过我的子查询答案获得了积分,如果这有所不同的话。在这一点上,我只是想知道是否有更好的方法,如果有的话,那是什么。

另一件事,我怀疑这件事很重要,但我的老师正在使用MySQL。

0 个答案:

没有答案