Banyak info di http://www.xaprb.com/blog/2006/12/07/how-to-select-the-firstleastmax-row-per-group-in-sql/
Ini selalu menjadi masalah yang mengganggu di MySQL. Ada beberapa cara untuk mengatasinya, seperti menggabungkan beberapa bidang bersama-sama (dimulai dengan external_id), lalu memilih MAX() dari itu, lalu memecahnya kembali.
Saya sarankan Anda menggunakan tabel turunan. Tabel pertama (t1) diturunkan dari kueri sederhana di mana Anda mengidentifikasi MAX(external_id)
, lalu Anda bergabung dari sana untuk mendapatkan data lainnya.
INI HANYA JIKA external_id
ITU UNIK
SELECT
t1.group_id, some_table.id, some_table.mypath
FROM
(
SELECT group_id, MAX(external_id) AS external_id
FROM some_table
GROUP BY group_id
) as t1
INNER JOIN
sometable ON t1.external_id = sometable.external_id
WHERE ...