SQL WHERE IN Clauza

Sql Where In Clauza



În SQL, putem folosi clauza WHERE IN pentru a filtra rezultatele dintr-o bază de date dată. Clauza WHERE IN ne permite să selectăm rândurile dintr-o bază de date dată care se potrivesc cu una sau mai multe dintre valorile specificate dintr-o listă dată.

În acest tutorial, vom explora clauza WHERE IN pentru a descoperi cum o putem folosi pentru a filtra rezultatele dintr-un tabel sau un set de rezultate dat.

SQL WHERE IN Clauza

Următoarele arată sintaxa de bază a clauzei WHERE IN în SQL:







SELECTAȚI coloana1, coloana2,...
FROM table_name
WHERE nume_coloană IN (valoare1, valoare2, ...);

Începem cu o declarație de bază „select” urmată de coloanele pe care dorim să le includem în setul de rezultate.



În continuare, specificăm tabelul din care dorim să extragem rezultatele. În cele din urmă, specificăm condiția de filtrare folosind clauza WHERE urmată de numele coloanei pe care dorim să filtram. După clauza IN, specificăm o listă de valori pe care dorim să o folosim pentru filtrare.



Exemplul 1: Filtrați un singur rezultat

Pentru a demonstra mai bine cum să folosiți clauza WHERE IN, să ne uităm la un exemplu. Luați în considerare tabelul „film” din baza de date de mostre Sakila.





Să presupunem că dorim să recuperăm toate filmele cu un rating de PG sau PG-13. Putem folosi clauza WHERE IN după cum urmează:

SELECTează titlul, release_year, rating
DIN film
WHERE rating IN („PG”);

În acest caz, oferim o listă cu o singură valoare pe care dorim să o regăsim în clauza IN.



Exemplul 2: Filtrați mai multe valori

De asemenea, putem specifica mai mult de un articol în lista de valori. De exemplu, pentru a prelua filmele cu o listă cu un rating de PG și PG-13, putem rula interogarea după cum urmează:

SELECTează titlul, release_year, rating
DIN film
WHERE rating IN („PG”, „PG-13”);

Rezultatul rezultat este după cum urmează:

Exemplul 3: Filtrați cu subinterogare

De asemenea, putem folosi WHERE IN într-o subinterogare, care ne poate permite să filtram rezultatele dintr-un set de rezultate dat.

Să presupunem că dorim să filtram filmele în funcție de limbaj. De exemplu, pentru a prelua filmele în limbile engleză și japoneză, putem folosi WHERE IN într-o subinterogare după cum urmează:

SELECTează titlul, release_year, rating
DIN filmul f
WHERE language_id IN (
SELECT ID_limbă
DIN limbaj
WHERE name IN („engleză”, „japoneză”)
);

În acest exemplu, creăm o subinterogare care preia valorile „language_id” pentru limbile engleză și japoneză din tabelul „languages”. În interogarea principală, selectăm filmele pe baza valorilor „language_id” rezultate.

Concluzie

În această postare, am învățat cum să lucrăm cu clauza WHERE IN în SQL pentru a filtra rezultatele care se potrivesc cu o singură sau mai multe valori dintr-o listă dată.