Gegeben Events
EventId, EventTyp, Datum
----------------------------------------
1 | 1 | 31.01.2008
2 | 1 | 01.02.2008
3 | 2 | 12.01.2008
4 | 2 | 02.03.2008
5 | 3 | 04.03.2008
SELECT hauptAbfrageTabelle.EventId,
hauptAbfrageTabelle.EventTyp,
hauptAbfrageTabelle.Datum
FROM (SELECT DISTINCT EventTyp FROM Events) nurEventTypen
INNER JOIN EventshauptAbfrageTabelle
ON nurEventTypen.EventTyp = hauptAbfrageTabelle.EventTyp
WHERE hauptAbfrageTabelle.Datum =
(SELECT MAX(korrelierteAbfrage.Datum)
FROM Events korrelierteAbfrage
WHERE korrelierteAbfrage.EventTyp = hauptAbfrageTabelle.EventTyp) -- das ist die Korrelation, die du zusätzlich zweimal in der selben form verschachteln musst
Jetzt solltest du genügend Anschub bekommen haben, den Rest auch noch hinzubekommen
Gruss, Frank