Sobes.tech
Middle

Kuidas struktureerida päring vahekaartidega maksimaalse kursuse kuupäeva jaoks?

sobes.tech AI

Vastus AI-lt

Selleks, et saada kursuse maksimaalne kuupäev kasutades vahelist tabelit, saab rakendada SQL-päringut koos agregatsiooni ja JOIN-iga.

Oletame, et olemas on järgmised tabelid:

  • courses (id, nimi)
  • course_dates (course_id, kuupäev, hind)

Ülesandeks on iga kursi jaoks saada kirje maksimaalse kuupäevaga.

Näide päringust:

SELECT c.id, c.nimi, cd.kuupäev, cd.hind
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
    SELECT course_id, MAX(kuupäev) AS max_kuupäev
    FROM course_dates
    GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.kuupäev = max_dates.max_kuupäev;

Siin:

  • Alampäringus max_dates valitakse iga kursi jaoks maksimaalne kuupäev.
  • Peapäring ühendab kursused kuupäevadega ja filtreerib maksimaalse kuupäeva järgi.

See lähenemine võimaldab saada ajakohaseid andmeid koos kursuse maksimaalse kuupäevaga, kasutades vahelist tabelit.