Middle
Kā strukturēt vaicājumu ar starpposma tabulu maksimālajai kursa datumam?
sobes.tech AI
Atbilde no AI
Lai iegūtu kursa maksimālo datumu, izmantojot starpposma tabulu, var izmantot SQL vaicājumu ar agregāciju un JOIN.
Pieņemsim, ka ir šādas tabulas:
courses(id, nosaukums)course_dates(course_id, datums, cena)
Uzdevums — katram kursam iegūt ierakstu ar maksimālo datumu.
Piemēra vaicājums:
SELECT c.id, c.nosaukums, cd.datums, cd.cena
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
SELECT course_id, MAX(datums) AS max_datums
FROM course_dates
GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.datums = max_dates.max_datums;
Šeit:
- Apakšvaicā
max_datestiek izvēlēts maksimālais datums katram kursam. - Tad galvenais vaicājums savieno kursus ar datumiem un filtrē pēc maksimālā datuma.
Šī pieeja ļauj iegūt aktuālus datus ar maksimālo kursa datumu, izmantojot starpposma tabulu.