Kaip naudoti SQL OR
Operatorius „SQL OR gali optimizuoti įrašų paiešką, apribojant rezultatus tik tais įrašais, kurie atitinka bent vieną iš jūsų nurodytų sąlygų. Jį galima derinti su kitais loginiais operatoriais, pavyzdžiui, AND ir NOT, siekiant pagreitinti ir patobulinti sudėtingas užklausas.
Kas yra SQL OR?
SQL operatoriai„AND“, „NOT“ ir OR yra vieni iš svarbiausių SQL operatorių, skirtų ieškoti reikiamos informacijos. O AND suranda duomenis, atitinkančius dvi ar daugiau sąlygų, NOT apibrėžia kriterijus, kuriuos reikia pašalinti iš rezultatų, OR leidžia atlikti lankstesnę paiešką. Jis leidžia nustatyti kelis paieškos kriterijus, iš kurių bent vienas turi būti tenkinamas rezultatų. Privalumas yra tas, kad galite gauti atitinkamus rezultatus, kurie nebūtinai atitinka visus išvardytus kriterijus.
Kadangi SQL OR naudojamas paieškos kriterijams suformuluoti, jis dažnai vartojamas kartu su SELECT ir WHERE. SELECT nurodo atitinkamus įrašus ir stulpelius, o WHERE – paieškos kriterijus. Norėdami, kad paieškos užklausa būtų dar tikslesnė, galite derinti OR su kitais loginiais operatoriais, pavyzdžiui, AND ir NOT, arba lyginamaisiais operatoriais, pavyzdžiui, =.
Kuo skiriasi SQL OR, AND ir NOT versijos?
Štai kokie yra SQL OR, AND ir NOT skirtumai:
SQL OR |
SQL AND |
SQL NOT |
|---|---|---|
| Filtruoja įrašus, kurie atitinka bent vieną iš sąlygų | Filtruoja duomenis, kurie atitinka visas sąlygas | Praleidžia informaciją, kuri neatitinka sąlygos |
| Išplečia paiešką, įtraukdamas kitą informaciją | Siaurina paiešką iki sąlygų derinio, kurias abi tenkina | Praleidžia nereikšmingą informaciją, naudodamas išskyrimo kriterijus |
Neturite SQL žinių? Nėra problemos! Mūsų SQL įvadas su pavyzdžiais – tai intensyvus pagrindų kursas.
Kokia yra SQL OR sintaksė?
Pagrindinė komandos OR sintaksė atrodo taip:
SELECT *
FROM Table
WHERE condition1 OR condition2 OR …sqlJame naudojami šie parametrai:
SELECT: Pasirenkamos stulpeliai, iš kurių norite gauti duomenis, naudojant pirminius ir užsienio raktus. Norėdami pasirinkti visus stulpelius, galite naudoti žvaigždutę*.FROM: Nurodo, kurioje lentelėje norite ieškoti.WHERE: Apibrėžia paieškos sąlygas, naudojant operatorius ir kitus parametrus.OR: Loginis operatorius, naudojamas kartu suWHERE, siekiant apibrėžti paieškos kriterijus.
Be to, užklausą galite suderinti su OR, NOT ir AND, kad dar labiau susiaurintumėte paiešką.
SQL OR kartu su AND
Šiame pavyzdyje WHERE sąlyga atrenka rezultatus, kuriuose tenkinama ir 1 sąlyga, ir bent viena iš 2 arba 3 sąlygų.
SELECT *
FROM Table
WHERE condition1 AND (condition2 OR condition3)sqlSQL OR kartu su SQL NOT
Galite derinti SQL OR ir NOT, kad būtų pašalinti duomenys, atitinkantys bent vieną iš nurodytų sąlygų.
SELECT *
FROM Table
WHERE NOT (condition1 OR condition2)sqlKam gali būti naudojamas SQL OR?
Naudodami SQL OR operatorių galite ieškoti sudėtingose duomenų bazėse pagal kelis kriterijus. Štai keletas naudojimo pavyzdžių:
- Klientų, užsakymų ir produktų duomenų filtravimas pagal sudėtinius paieškos kriterijus, pavyzdžiui, produktų kategorijas, produktų savybes arba užsakymų ir skundų datas
- Įmonių paieška pagal tam tikras pramonės šakas ar regionus
- Įtartinų ar negaliojančių sandorių filtravimas naudojant keletą sąlygų
- Informacijos apie konkretaus skyriaus ar komandos darbuotojus paieška
- Kandidatų, neturinčių aukštojo išsilavinimo arba darbo patirties, paieška
SQL pavyzdžiai OR
Operatorius OR, derinamas su WHERE, kitais SQL operatoriais ir kitomis SQL funkcijomis, turi begalę pritaikymo galimybių. Toliau pateiksime 3 pavyzdžius, kad galėtumėte geriau suprasti, kaip veikia OR “.
Užsakymų paieška pagal tam tikras kategorijas
Tarkime, norite klientų lentelėje surasti žmones, kurie užsisakė prekių iš vienos arba abiejų kategorijų – „Elektronika“ ir „Plaukai“. Rezultatai apims tik tuos įrašus, kurie atitinka bent vieną iš šių dviejų sąlygų. Kategorijoms nurodyti naudosime palyginimo operatorių =.
Jos sintaksė atrodo taip:
SELECT *
FROM Customers
WHERE (Category = 'Electronics' OR Category = 'Hair')sqlPareiškėjų atranka
Šiame pavyzdyje yra lentelė pavadinimu „Kandidatai“. Norime rasti joje esančius asmenis, turinčius elektrotechnikos arba IT srities išsilavinimą ir ne mažiau kaip trejų metų darbo patirtį. Tam sujungsime OR ir AND. Paieška atrodo taip:
SELECT *
FROM Applicants
WHERE (Degree = 'Electrical engineering' OR Degree = 'IT')
AND (Experience >= 3)sqlPaieška pagal regioną
Paskutiniame pavyzdyje norime lentelėje „Klientai“ ieškoti klientų iš Prancūzijos arba Vokietijos. Sintaksė atrodo taip:
SELECT *
FROM Customers
WHERE Country = 'France' OR Country = 'Germany'sqlAr yra SQL OR alternatyvų?
Operatorius OR leidžia paprastai ir greitai atlikti paiešką pagal keletą sąlygų. Šie SQL operatoriai atlieka panašią funkciją:
CASE: SQL išraiška CASE taip pat gali būti naudojama kartu suWHERE,THENirELSEsąlygomis, siekiant patikrinti sąlygas ir susiaurinti sudėtingą analizę iki reikšmingų rezultatų. Ji įvertinama naudojant „IF-THEN-ELSE“ teiginį ir sąlygos tikrinamos iš apačios į viršų. Analizė sustabdoma, kai įvykdoma viena iš sąlygų.IN: OperatoriusINgali būti naudojamasWHEREsąlygoje įrašams tikrinti. Galite apibrėžti reikšmes arba eilutes naudodamiINir tada ieškoti atitikmenų lentelėse arba stulpeliuose.EXISTS: SQL funkcija EXISTS gali būti naudojama lentelėje, siekiant patikrinti, ar bent vienas įrašas iš kitos lentelės atitinka pirmąją lentelę. Jei yra bent vienas atitikimas, rezultatas bus pridėtas prie tikslinės lentelės. Šis operatorius yra naudingas tik tuo atveju, jei dirbate su dviem susijusiomis lentelėmis.