SQL Where Clause on Multiple Conditions

Sql Where Clause On Multiple Conditions



Ang mga database ay isang mahalagang bloke ng gusali ng mga modernong aplikasyon. Gayunpaman, ang mga database ay nag-iimbak ng napakalaking dami ng data. Samakatuwid, kailangan namin ng mga paraan upang i-filter ang data at kunin lamang ang mga kinakailangang tala.

Ang isa sa mga pinakakaraniwang paraan ng pag-filter ng data ng SQL ay ang paggamit ng sugnay na WHERE. Ang sugnay na WHERE sa SQL ay nagpapahintulot sa amin na i-filter ang mga tala batay sa isang ibinigay na kundisyon. Maaaring tukuyin ng sugnay na ito ang isa o higit pang mga kundisyon na nagpapahintulot sa amin na i-filter ang mga tala na ibinalik ng isang SELECT statement.







Tinutuklas ng tutorial na ito kung paano gumana sa sugnay na WHERE at tukuyin ang maraming kundisyon sa iisang sugnay na nagbibigay-daan para sa mas kontrolado at butil-butil na pag-filter ng data.



SQL WHERE Mga Pangunahing Kaalaman sa Clause

Magsimula tayo sa mga pangunahing kaalaman at matutunan ang mga batayan ng pagtatrabaho sa sugnay na WHERE sa SQL.



Ipagpalagay na mayroon kaming isang talahanayan na naglalaman ng impormasyon ng bansa, at kinukuha lang namin ang mga bansang may populasyon (bawat kilometro kuwadrado) na higit sa 100 at isang lugar na higit sa 2000000.





Maaari kaming magpatakbo ng isang query tulad ng sumusunod:

PUMILI * MULA sa sample_db.country_information
SAAN lugar > 2,000,000 AT populasyon_bawat_km_sq > 100 ;


Sa nakaraang halimbawa, ginagamit namin ang sugnay na WHERE at ang AND operator upang tukuyin ang dalawang kundisyon. Ang paggamit sa operator ng AND ay nagsasabi sa SQL na ang parehong kundisyon ay DAPAT matupad para maisama ang rekord sa set ng resulta.



Dapat lamang nitong ibalik ang mga bansang tumutugma sa tinukoy na pamantayan tulad ng sumusunod:


Tingnan natin ang iba pang mga operator upang tukuyin ang maraming kundisyon sa isang sugnay na WHERE.

SQL O Operator

Ang OR operator ay nagpapahintulot sa amin na tukuyin ang maraming kundisyon sa isang sugnay na WHERE. Gayunpaman, hindi tulad ng isang operator na AND na nangangailangan ng lahat ng kundisyon na matugunan, ang OR operator ay nangangailangan ng kahit isa sa mga kundisyon na dapat matugunan.

Halimbawa, upang piliin ang mga bansang may lugar na higit sa 2000000 o populasyon (bawat kilometro kuwadrado) na higit sa 100, maaari naming patakbuhin ang sumusunod na query:

PUMILI * MULA sa sample_db.country_information
SAAN lugar > 2,000,000 O populasyon_bawat_km_sq > 100 ;


Sa kasong ito, dapat ibalik ng query ang mga resulta tulad ng sumusunod:

SQL IN Operator

Magagamit din namin ang IN operator upang tukuyin ang maraming halaga para sa isang column. Halimbawa, upang piliin ang mga bansang may pangalang kasama ang mga string ng 'Estados Unidos' at 'Russia', maaari naming patakbuhin ang query tulad ng sumusunod:

PUMILI * MULA sa sample_db.country_information
SAAN bansa SA ( 'Estados Unidos' , 'Russia' ) ;


Resulta:

SQL HINDI Operator

Ang NOT operator ay nagpapahintulot sa amin na pawalang-bisa ang isang ibinigay na kundisyon.

Halimbawa, piliin ang mga bansang walang tinukoy na lugar at sikat sa bawat sq km:

PUMILI * MULA sa sample_db.country_information
SAAN HINDI lugar > 2,000,000 AT populasyon_bawat_km_sq > 100 ;


Resulta:

SQL Maramihang Operator

Maaari rin nating pagsamahin ang maramihang mga operator upang tukuyin ang mas kumplikadong mga kondisyon.

PUMILI * MULA sa sample_db.country_information
SAAN ( country_information.lugar > 2,000,000 AT populasyon_bawat_km_sq > 100 ) O bansa = 'China' ;


Output:


Sa halimbawang ito, ginagamit namin ang mga panaklong upang igrupo ang unang dalawang kundisyon upang masuri ang mga ito bilang isang kundisyon bago ikumpara sa ikatlong kundisyon.

Konklusyon

Natutunan namin kung paano gamitin ang sugnay na WHERE upang tukuyin ang maraming kundisyon sa SQL. Bilang karagdagan, sinakop namin ang mga operator ng AND, OR, IN, at NOT at natuklasan namin kung paano pagsamahin ang mga ito upang lumikha ng mas kumplikadong mga kundisyon.