Kas ühes ja samas SQL päringus võib segamini kasutada vanemat ja uuemat ühendamise süntaksi?

Postitas Erki Eessaar 19.03.2023 12:58 (muudeti 19.03.2023 12:58)
Jah, see on tehniliselt võimalik. Kuid see ei ole soovitav, sest halvendab koodi loetavust.

Halvem.
SELECT Tudeng.tudkood, Tudeng.perenimi, Oppimine.oppim_algus, Oppimine.oppim_lopp, Aine.aine_kood, Aine.nimetus
FROM Aine, Tudeng INNER JOIN Oppimine ON Tudeng.tudkood = Oppimine.tudeng
WHERE Aine.aine_kood = Oppimine.aine;


Parem.
SELECT Tudeng.tudkood, Tudeng.perenimi, Oppimine.oppim_algus, Oppimine.oppim_lopp, Aine.aine_kood, Aine.nimetus
FROM (Tudeng INNER JOIN Oppimine ON Tudeng.tudkood = Oppimine.tudeng)
INNER JOIN Aine ON Aine.aine_kood = Oppimine.aine;
--läbivalt uuem süntaks

SELECT Tudeng.tudkood, Tudeng.perenimi, Oppimine.oppim_algus, Oppimine.oppim_lopp, Aine.aine_kood, Aine.nimetus
FROM Tudeng, Oppimine, Aine
WHERE Tudeng.tudkood = Oppimine.tudeng
AND Aine.aine_kood = Oppimine.aine;

--läbivalt vanem süntaks

Hinda postitust:

Keskmine hinne : Pole veel hinnanguid!