Meget info på http://www.xaprb.com/blog/2006/12/07/how-to-select-the-firstleastmax-row-per-group-in-sql/
Dette har altid været et irriterende problem i MySQL. Der har været måder at undgå det på, såsom at sammenkæde flere felter sammen (startende med eksternt_id), og derefter vælge MAX() for det, og derefter skille det ad igen.
Jeg foreslår, at du bruger en afledt tabel. Første tabel (t1) er afledt af en simpel forespørgsel, hvor du identificerer MAX(external_id)
, så tilslutter du dig fra det for at få resten af dataene.
DETTE ER KUN HVIS external_id
ER UNIK
SELECT t1.group_id, some_table.id, some_table.mypathFROM ( SELECT group_id, MAX(external_id) AS external_id FROM some_table GROUP BY group_id ) as t1INNER JOIN sometable ON t1.external_id =sometable.HERE_ /kode>