SQL SAAN SA Sugnay

Sql Saan Sa Sugnay



Sa SQL, maaari nating gamitin ang sugnay na WHERE IN upang i-filter ang mga resulta sa isang ibinigay na database. Ang sugnay na WHERE IN ay nagpapahintulot sa amin na piliin ang mga hilera mula sa isang ibinigay na database na tumutugma sa isa o higit pa sa mga tinukoy na halaga mula sa isang ibinigay na listahan.

Sa tutorial na ito, tutuklasin natin ang sugnay na WHERE IN para matuklasan kung paano natin ito magagamit para i-filter ang mga resulta mula sa isang ibinigay na talahanayan o set ng resulta.

SQL SAAN SA Sugnay

Ipinapakita ng sumusunod ang pangunahing syntax ng sugnay na WHERE IN sa SQL:







PUMILI ng column1, column2, ...
MULA sa table_name
WHERE column_name IN (value1, value2, ...);

Nagsisimula kami sa isang pangunahing pahayag na 'piliin' na sinusundan ng mga column na gusto naming isama sa set ng resulta.



Susunod, tinukoy namin ang talahanayan kung saan nais naming makuha ang mga resulta. Panghuli, tinutukoy namin ang kundisyon ng filter gamit ang sugnay na WHERE na sinusundan ng pangalan ng column kung saan gusto naming i-filter. Pagkatapos ng IN clause, tumukoy kami ng listahan ng value na gusto naming gamitin para sa pag-filter.



Halimbawa 1: I-filter ang Isang Resulta

Upang mas maipakita kung paano gamitin ang sugnay na WHERE IN, tingnan natin ang isang halimbawa. Isaalang-alang ang talahanayan ng 'pelikula' mula sa database ng sample ng Sakila.





Ipagpalagay na nais naming kunin ang lahat ng mga pelikulang may rating na PG o PG-13. Magagamit natin ang sugnay na WHERE IN gaya ng sumusunod:

PUMILI ng pamagat, release_year, rating
MULA sa pelikula
WHERE rating IN ('PG');

Sa kasong ito, nagbibigay kami ng listahan ng iisang value na gusto naming makuha sa sugnay na IN.



Halimbawa 2: I-filter ang Maramihang Halaga

Maaari rin kaming tumukoy ng higit sa isang item sa listahan ng mga halaga. Halimbawa, upang makuha ang mga pelikulang may listahan na may rating na PG at PG-13, maaari naming patakbuhin ang query tulad ng sumusunod:

PUMILI ng pamagat, release_year, rating
MULA sa pelikula
WHERE rating IN ('PG', 'PG-13');

Ang resultang output ay ang mga sumusunod:

Halimbawa 3: I-filter gamit ang Subquery

Magagamit din namin ang WHERE IN sa isang subquery na maaaring magpapahintulot sa amin na i-filter ang mga resulta mula sa isang naibigay na set ng resulta.

Ipagpalagay na nais naming i-filter ang mga pelikula batay sa wika. Halimbawa, para kunin ang mga pelikula sa English at Japanese na wika, maaari naming gamitin ang WHERE IN sa loob ng subquery gaya ng sumusunod:

PUMILI ng pamagat, release_year, rating
MULA sa pelikula f
WHERE language_id IN (
PUMILI ng wika_id
MULA sa wika
WHERE name IN ('English', 'Japanese')
);

Sa halimbawang ito, lumikha kami ng subquery na kumukuha ng mga halaga ng 'language_id' para sa mga wikang Ingles at Japanese mula sa talahanayan ng 'mga wika.' Sa pangunahing query, pipiliin namin ang mga pelikula batay sa mga nagresultang halaga ng 'language_id'.

Konklusyon

Sa post na ito, natutunan namin kung paano gamitin ang sugnay na WHERE IN sa SQL upang i-filter ang mga resulta na tumutugma sa isa o maramihang mga halaga sa isang ibinigay na listahan.