SQL operateri `ALL`, `ANY`, `EXISTS` i `SOME` se koriste za poređenje vrednosti u podupitu sa vrednostima u glavnom upitu. Evo objašnjenja i primera za svaki od ovih operatera:
ALL operator:
Operator `ALL` koristi se za upoređivanje da li svi rezultati podupita zadovoljavaju određeni uslov.
SELECT Ime
FROM Studenti
WHERE Bodovi > ALL (SELECT Bodovi FROM Studenti WHERE Godina = 2);
ANY operator:
Operator `ANY` koristi se za upoređivanje da li bar jedan rezultat podupita zadovoljava određeni uslov.
SELECT Ime
FROM Proizvodi
WHERE Cena = ANY (SELECT Cena FROM KonkurentskaRoba
WHERE
Kategorija = 'Elektronika');
EXISTS operator:
Operator `EXISTS` koristi se za proveru postojanja rezultata u podupitu.
SELECT Ime
FROM Narudžbine
WHERE EXISTS (SELECT * FROM StavkeNarudžbine
WHERE Narudžbine.ID = StavkeNarudžbine.NarudžbaID);
SOME operator:
Operator `SOME` se koristi na sličan način kao `ANY` za upoređivanje sa bilo kojim rezultatom podupita.
SELECT Ime
FROM Proizvodi
WHERE Cena = SOME (SELECT Cena FROM KonkurentskaRoba
WHERE Kategorija = 'Elektronika');
Napomena: Sintaksa za kreiranje privremene tabele može se razlikovati u različitim SQL sistemima (npr. SQL Server, MySQL, itd.), pa je važno da koristite odgovarajuću sintaksu za svoju bazu podataka.