Middle
Ako štruktúrovať dopyt s medziľahlou tabuľkou pre maximálny dátum kurzu?
sobes.tech AI
Odpoveď od AI
Za pridobitev največjega datuma tečaja z uporabo vmesne tabele lahko uporabite SQL poizvedbo z agregacijo in JOIN.
Predpostavimo, da obstajata tabeli:
courses(id, ime)course_dates(course_id, datum, cena)
Naloga je, da za vsak tečaj pridobite zapis z največjim datumom.
Primer poizvedbe:
SELECT c.id, c.ime, cd.datum, cd.cena
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;
Tukaj:
- V podpoizvedbi
max_datesje izbran največji datum za vsak tečaj. - Nato glavno povpraševanje poveže tečaje z datumi in filtrira po največjem datumu.
Tak pristop omogoča pridobitev posodobljenih podatkov z največjim datumom tečaja, z uporabo vmesne tabele.