SELECT c.*, d.*
FROM country c
INNER JOIN ducks d
ON d.id = --- guessing the ducks Primary Key here
( SELECT dd.id --- and here
FROM ducks dd
WHERE c.id = dd.country_id
ORDER BY dd.rating DESC
LIMIT 1
)
Index na (country_id, rating, id)
pro tabulku MyISAM nebo (country_id, rating)
pro tabulku InnoDB by pomohlo.
Tento dotaz zobrazí pouze jednu duck
na zemi, i když více než jedna má stejné hodnocení. Pokud chcete, aby se objevily kachny s nerozhodným hodnocením, použijte GROUP BY
@imm odpovědět.