У меня есть две таблицы (страны и утки), где в таблице стран указаны все страны мира, а в таблице уток есть список уток с полем country_id для связи с основной страной.
Я пытаюсь получить список только стран, в которых есть хотя бы одна утка, а также одну совпадающую запись из таблицы уток для утки с самым высоким рейтингом в этой стране. На данный момент у меня есть:
SELECT *
FROM country c
INNER JOIN ducks d ON c.id = d.country_id
ORDER BY c.country ASC, d.rating DESC
Это возвращает список всех уток, а не только одну на страну.
Буду признателен, если кто-нибудь укажет мне правильное направление. Я бы предпочел сделать это на SQL, чем иметь отдельный запрос для каждой страны, чтобы вытащить утку с самым высоким рейтингом.