mysql, Query, Immer nur der letzte Eintrag
bearbeitet von JörgHallo Rolf,
> Du kannst mit einer Zusatzklausel den JOIN auf das jüngste Datum limitieren:
>
> ~~~sql
> SELECT t1.ID1, t1.Spalte1, t2.ID2, t2.Spalte2
> FROM table1 t1
> LEFT JOIN table2 t2 ON t1.ID1 = t2.ID1
> AND t2.Datum = (SELECT MAX(Datum)
> FROM table2
> WHERE id = t1.ID1)
> ~~~
>
Das habe ich versucht und es funktioniert.
Leider ergibt sich hieraus ein Problem, das ich nicht bedacht hatte:
In table2 gibt es eine Flag-Spalte `XYZ(int 1)`. Und es sollen alle Einträge mit XYZ=0 angezeigt werden, während von denen mit XYZ=1 nur der jeweils älteste angezeigt werden soll. Sorry für die weitere Einschränkung, die ist mir selber erst gerade beim Testen aufgefallen.
Jörg