PostgreSQL IN, Ne IN s primjerima
ล to je PostgreSQL u ?
Operator IN koristi se u klauzuli WHERE koja omoguฤuje provjeru je li vrijednost prisutna na popisu drugih vrijednosti. U Operation pomaลพe smanjiti potrebu za viลกestrukim OR uvjetima u SELECT, UPDATE, INSERT ili DELETE izjavama.
Sintaksa
IN operator ima sljedeฤu sintaksu:
value IN (value_1, value_2, ...)
Vrijednost je vrijednost koju provjeravate na popisu.
Vrijednost_1, vrijednost_2โฆ su vrijednosti popisa.
Ako se vrijednost pronaฤe na popisu, operator ฤe vratiti true.
Popis moลพe biti skup brojeva nizova ili ฤak izlazni rezultat a SELECT izraz kao ลกto je prikazano u nastavku:
value IN (SELECT value FROM table-name);
Izjava smjeลกtena unutar zagrade poznata je kao podupit.
S karakterom
Pokaลพimo kako moลพete koristiti operator IN s vrijednostima znakova.
Razmotrite sljedeฤu tablicu:
Zaposlenici:
Pokrenimo sljedeฤi upit prema gornjoj tablici:
SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Vraฤa sljedeฤe:
Imamo popis od tri imena. Traลพimo moลพemo li pronaฤi neko od ovih imena u stupcu imena tablice Zaposlenici. Kate Joel je usklaฤena s jednim od zapisa stola, a detalji su vraฤeni.
S numeriฤkim
Pogledajmo sada kako moลพemo koristiti operator IN s numeriฤkim vrijednostima.
Razmotrite donju tablicu cijena:
Cijena:
Moลพemo pokrenuti sljedeฤi upit prema tablici:
SELECT * FROM Price WHERE price IN (200, 308, 250, 550);
Ovo vraฤa sljedeฤe:
Napravili smo popis s 4 numeriฤke vrijednosti. Provjeravamo moลพemo li spojiti bilo koju od ovih vrijednosti s vrijednostima sadrลพanim u stupcu cijena u tablici Cijena. Usporeฤene su dvije vrijednosti i vraฤeni su njihovi detalji.
Koriลกtenje operatora NOT
Operator IN moลพe se koristiti zajedno s operatorom NOT. Vraฤa vrijednosti koje nisu pronaฤene u navedenom stupcu. Koristit ฤemo se tablicom cijena da to pokaลพemo.
SELECT * FROM Price WHERE price NOT IN (200, 400, 190, 230);
Ovo ฤe vratiti sljedeฤe:
Napravili smo popis s 4 numeriฤke vrijednosti. Provjeravamo stupac cijena u tablici cijena za vrijednosti koje nisu dio popisa. Dvije vrijednosti, 250 i 300, nisu pronaฤene. Stoga su njihovi podaci vraฤeni.
Koristeฤi pgAdmin
Sada da vidimo kako se radnje mogu izvesti pomoฤu pgAdmin-a.
S karakterom
Da biste postigli isto putem pgAdmina, uฤinite ovo:
Korak 1) Prijavite se na svoj pgAdmin raฤun.
Korak 2)
- Na navigacijskoj traci s lijeve strane kliknite Databases.
- Pritisnite Demo.
Korak 3) Unesite upit u ureฤivaฤ upita:
SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Korak 4) Pritisnite gumb Izvrลกi.
Trebao bi vratiti sljedeฤe:
S numeriฤkim
Da biste postigli isto putem pgAdmina, uฤinite ovo:
Korak 1) Prijavite se na svoj pgAdmin raฤun.
Korak 2)
- Na navigacijskoj traci s lijeve strane kliknite Databases.
- Pritisnite Demo.
Korak 3) Unesite upit u ureฤivaฤ upita:
SELECT * FROM Price WHERE price IN (200, 308, 250, 550);
Korak 4) Pritisnite gumb Izvrลกi.
Trebao bi vratiti sljedeฤe:
Koriลกtenje operatora NOT
Da biste postigli isto putem pgAdmina, uฤinite ovo:
Korak 1) Prijavite se na svoj pgAdmin raฤun.
Korak 2)
- Na navigacijskoj traci s lijeve strane kliknite Databases.
- Pritisnite Demo.
Korak 3) Unesite upit u ureฤivaฤ upita:
SELECT * FROM Price WHERE price NOT IN (200, 400, 190, 230);
Korak 4) Pritisnite gumb Izvrลกi.
Trebao bi vratiti sljedeฤe:
Rezime
- Operator IN koristi se s operatorom WHERE. Omoguฤuje provjeru postoji li odreฤena vrijednost u odreฤenoj tablici.
- Operator IN pomaลพe u smanjenju potrebe za viลกestrukim operatorima OR u izjavama SELECT, UPDATE, INSERT ili DELETE.
- Prilikom izrade popisa znakova za provjeru prisutnosti vrijednosti, svaka vrijednost na popisu treba biti unutar jednostrukih navodnika.
- Operator IN takoฤer se moลพe koristiti s numeriฤkim vrijednostima.
- Kada se operator IN koristi zajedno s operatorom NOT, vraฤa sve vrijednosti koje nisu pronaฤene u navedenom stupcu.














