Middle
Cum se structurează o interogare cu un tabel intermediar pentru data maximă a cursului?
sobes.tech AI
Răspuns de la AI
Pentru a obține data maximă a cursului utilizând o tabelă intermediară, se poate aplica o interogare SQL cu agregare și JOIN.
Presupunem că există tabele:
courses(id, nume)course_dates(course_id, dată, preț)
Sarcina este să obțineți, pentru fiecare curs, înregistrarea cu data maximă.
Exemplu de interogare:
SELECT c.id, c.nume, cd.dată, cd.preț
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
SELECT course_id, MAX(dată) AS max_dată
FROM course_dates
GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.dată = max_dates.max_dată;
Aici:
- În subinterogarea
max_dates, se selectează data maximă pentru fiecare curs. - Apoi, interogarea principală unește cursurile cu datele și filtrează după data maximă.
Această abordare permite obținerea datelor actualizate cu data maximă a cursului, folosind o tabelă intermediară.