我需要从一个表中选择多个列,以及其中一个列的最大值结果必须只有最大值所在的那一行。这是我的表的简化版本(对不起,不知道如何插入空格)
╔═════════╦══════════╦═══════════╗
║ CARMAKE ║ CARMODEL ║ CARWEIGHT ║
╠═════════╬══════════╬═══════════╣
║ A ║ B ║ 1000 ║
║ C ║ D ║ 900 ║
╚═════════╩══════════╩═══════════╝
期望的结果是
╔═════════╦══════════╦═══════════╗
║ CARMAKE ║ CARMODEL ║ CARWEIGHT ║
╠═════════╬══════════╬═══════════╣
║ A ║ B ║ 1000 ║
╚═════════╩══════════╩═══════════╝
但是当我使用
SELECT carmake, carmodel, MAX(carweight)
FROM car
GROUP BY carmake, carmodel
它将显示每个品牌等的最大值,而不仅仅是具有绝对最大值的行。我怎样才能做到这一点?