我有两个表(country & ducks),其中country表包含世界上的每个国家,而ducks表具有一个country_id字段,用于链接到主要的country表中,其中包含一个鸭子列表。
我正在尝试获取仅包含至少一个鸭子的国家列表,并在其中为该国家内评分最高的鸭子获取单个匹配记录。到目前为止,我所拥有的是:
SELECT *
FROM country c
INNER JOIN ducks d ON c.id = d.country_id
ORDER BY c.country ASC, d.rating DESC
这会返回每个国家的所有鸭子列表,而不是每个国家仅返回一个。
如果有人能指点我正确的方向,我将不胜感激。我希望通过SQL来完成这个任务,而不是为每个国家单独编写查询以提取最高评价的鸭子。