Predikßt IN (SQL)

predikßt_IN ::= v²raz1 [NOT] IN {( v²raz { , v²raz }à ) | ( dotazov²_v²raz )}

Predikßt IN °φkß, zda hodnota v²razu1 je mezi hodnotami uveden²ch v²raz∙ nebo mezi hodnotami v odpov∞di na dotazov² v²raz (subdotaz).

Odpov∞∩ na dotazov² v²raz musφ b²t skalßrnφ. Typ odpov∞di na subdotaz a typy vÜech v²raz∙ musφ b²t porovnatelnΘ s typem v²razu1.

P°φklad pou₧itφ (v²Φet hodnot):

Vybrat faktury z lich²ch m∞sφc∙:

SELECT *
FROM Faktury
WHERE Month(dat1) IN (1,3,5,7,9,11)

P°φklad pou₧itφ (subdotaz):

Vyberte faktury, kterΘ pat°φ firmßm z Prahy

SELECT Faktury.cislo,Faktury.firma
FROM Faktury
WHERE firma IN (SELECT cislo
                FROM Firmy
                WHERE mesto LIKE "Praha%")

Stejn² v²sledek lze dostat pomocφ JOINu

SELECT DISTINCT Faktury.cislo, Faktury.firma
FROM Faktury, Firmy
WHERE Firmy.cislo=Faktury.firma
 AND (Firmy.mesto.="Praha")