Middle
Hoe structureer je een query met een tussentabel voor de maximale cursusdatum?
sobes.tech AI
Antwoord van AI
Om de maximale cursusdatum te verkrijgen met behulp van een tussentabel, kan een SQL-query met aggregatie en JOIN worden toegepast.
Laten we aannemen dat er tabellen zijn:
courses(id, naam)course_dates(course_id, datum, prijs)
De taak is om voor elke cursus de record met de maximale datum te krijgen.
Voorbeeldquery:
SELECT c.id, c.naam, cd.datum, cd.prijs
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
SELECT course_id, MAX(datum) AS max_datum
FROM course_dates
GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.datum = max_dates.max_datum;
Hier:
- In de subquery
max_dateswordt voor elke cursus de maximale datum geselecteerd. - Vervolgens verbindt de hoofdquery de cursussen met de datums en filtert op de maximale datum.
Deze aanpak maakt het mogelijk om actuele gegevens met de maximale cursusdatum te verkrijgen, gebruikmakend van een tussentabel.