Andmebaaside eksami kordamisküsimuste vastused
Alampäring on päring, mis asub teise SQL-lause sees. Süntaks on sama, mis
tavalisel päringul, va. puudub ORDER BY klausel.
Üks kord täidetav alampäring - alampäringut täidetakse üks kord terve
SQL-lause kohta. Põhipäringu WHERE klauslis saab võrdlusoperaatoreid
"<","<>","<" ,">", ">=", "<=" kasutada vaid siis, kui alampäring tagastab ühe
kirje.
Ntx: SELECT *
FROM Tootaja
WHERE palk >(SELECT palk FROM Tootaja WHERE tootaja_kood =1);
Korreleeruv alampäring - Korrelleeruva alampäringu korral nõuab
alampäring infot peapäringu ridade kohta ja käivitub iga kord uuesti iga
peapäringu rea korral. Alampäringut täidetakse korduvalt, kui alampäringu
WHERE klausel viitab pealausest pärit olevale veerule.
Ntx: SELECT nimi
FROM Tootaja X
WHERE palk >(SELECT Avg(palk) FROM Tootaja Y WHERE
X.osakonna_nr = Y.osakonna_nr);
Skalaarne alampäring - Seda tüüpi alampäring tagastab skalaarse väärtuse
st. ühe rea ja ühe veeru.