Hallo,
ich habe zwei Tabellen welche durch eine id verknüpft sind. Zu den Einträgen in Tabelle A gibt es teilweise mehrere Einträge in Tabelle B (1:n). Die Einträge in Tabelle B sind mit einem Datum versehen.
Wie kann ich nun alle Zeilen aus Tabelle A mit jeweils nur den aktuellsten Einträgen aus Tabelle B anzeigen?
Gruß
Till
Hallo Till,
aus dem Bauch heraus:
select \*
from TabelleA as a,
(select id, max(datum)
from TabelleB
group by id
) as b
where a.id=b.id
;
MfG Georg V.
Tabelle B ( ID und Datum)
Tabelle A ID
select * from A inner join
(select id, max (Datum) from B group by ID) temp on Temp.id=A.ID
oder wenn du mehere Spalten aus B Anzeigen willst:
select a.*,b.* from A inner join
B
on b.id=a.id
inner join
(select id, max (Datum) as Datum from B group by ID) temp
on Temp.id=b.ID and b.datum=temp.datum)
Danke! Eure Vorschläge haben mir sehr weiter geholfen.