我有一张表,表 1。在这张表中是名称、城市、价格。名称都是唯一的,城市可以重复使用。我想做一个查询,给出每个城市的最高价格,以及与该行关联的名称。为了获得每个城市的最高价格,我只是这样做:
SELECT MAX(price), city FROM table1 GROUP BY city
但我也想要这个名字。如果我尝试
SELECT MAX(price), city, name FROM table1 GROUP BY city
然后我得到一个关于 name 如何不包含在 group by 中的查询错误。如果我将 name 添加到 group by,那么它不会做我想要的。我可以想到如何使用两个查询来做到这一点,但我敢打赌有一种方法可以做到这一点。我错过了什么?
我在 stackoverflow 上发现了一些类似的问题,但它们似乎都在做一些比我试图做的更复杂的事情。我只使用过简单的 SQL 查询,所以我正在自学一些更高级的功能。