Kā lietot SQL OR
Operators „SQL OR var optimizēt ierakstu meklēšanu, ierobežojot rezultātus tikai ar tiem ierakstiem, kas atbilst vismaz vienam no jūsu nosacījumiem. To var kombinēt ar citiem loģiskajiem operatoriem, piemēram, AND un NOT, lai paātrinātu un uzlabotu sarežģītu vaicājumu izpildi.
Kas ir SQL OR?
SQL operatori„AND“, „NOT“ un OR ir daži no svarīgākajiem SQL operatoriem, kas ļauj atrast vajadzīgo informāciju. Kamēr AND atrod datus, kas atbilst diviem vai vairākiem nosacījumiem, un NOT nosaka kritērijus, kas no rezultātiem ir jāizslēdz, OR ļauj veikt ne tik stingru meklēšanu. Tas ļauj definēt vairākus meklēšanas kritērijus, no kuriem vismaz vienam ir jābūt izpildītam rezultātos. Priekšrocība ir tā, ka varat iegūt atbilstošus rezultātus, kas ne vienmēr atbilst visiem uzskaitītajiem kritērijiem.
Tā kā SQL OR tiek izmantots meklēšanas kritēriju formulēšanai, to bieži lieto kopā ar SELECT un WHERE. SELECT norāda attiecīgos ierakstus un kolonnas, bet WHERE — meklēšanas kritērijus. Lai padarītu meklēšanas vaicājumu vēl precīzāku, varat apvienot OR ar citiem loģiskajiem operatoriem, piemēram, AND un NOT, vai salīdzināšanas operatoriem, piemēram, =.
Kāda ir atšķirība starp SQL OR, AND un NOT?
Šeit ir atšķirības starp SQL OR, AND un NOT:
SQL OR |
SQL AND |
SQL NOT |
|---|---|---|
| Filtrē ierakstus, kas atbilst vismaz vienam no nosacījumiem | Filtrē datus, kas atbilst visiem nosacījumiem | Izlaiž informāciju, kas neatbilst nosacījumam |
| Paplašina meklēšanu ar dažādu informāciju | Sašaurina meklēšanu līdz nosacījumu kombinācijai, kuriem abiem ir jābūt izpildītiem | Izlaiž neatbilstošu informāciju, izmantojot izslēgšanas kritērijus |
Nav pieredzes SQL jomā? Nav problēmu! Mūsu SQL ievads ar piemēriem piedāvā ātrkursu par pamatiem.
Kāda ir SQL OR sintakse?
OR pamatgramatika izskatās šādi:
SELECT *
FROM Table
WHERE condition1 OR condition2 OR …sqlTajā tiek izmantoti šādi parametri:
SELECT: Izvēlas kolonnes, no kurām vēlaties iegūt datus, izmantojot primāros un ārējos atslēgas. Lai izvēlētos visas kolonnes, varat izmantot zvaigznīti*.FROM: Norāda, kurā tabulā vēlaties veikt meklēšanu.WHERE: Definē meklēšanas nosacījumus, izmantojot operatorus un citus parametrus.OR: Loģiskais operators, ko izmanto kopā arWHERE, lai definētu meklēšanas kritērijus.
Jūs varat arī savā vaicājumā apvienot OR ar NOT un AND, lai vēl vairāk sašaurinātu meklēšanas rezultātus.
SQL OR kopā ar AND
Šajā piemērā WHERE klauzula atlasa rezultātus, kuros ir izpildīts gan 1. nosacījums, gan vismaz viens no 2. vai 3. nosacījumiem.
SELECT *
FROM Table
WHERE condition1 AND (condition2 OR condition3)sqlSQL OR kopā ar SQL NOT
Jūs varat apvienot SQL OR ar NOT, lai izslēgtu datus, kas atbilst vismaz vienam no uzskaitītajiem nosacījumiem.
SELECT *
FROM Table
WHERE NOT (condition1 OR condition2)sqlKādiem mērķiem var izmantot SQL OR?
Izmantojot operatoru SQL OR, varat veikt meklēšanu sarežģītos datu kopumos, pamatojoties uz vairākiem kritērijiem. Šeit ir daži piemēri:
- Klientu, pasūtījumu un produktu datu filtrēšana, pamatojoties uz kombinētiem meklēšanas kritērijiem, piemēram, produktu kategorijām, produktu īpašībām vai pasūtījumu un sūdzību datumiem
- Uzņēmumu meklēšana noteiktās nozarēs vai reģionos
- Aizdomīgu vai nederīgu darījumu filtrēšana, izmantojot vairākus nosacījumus
- Informācijas meklēšana par darbiniekiem no konkrētas nodaļas vai komandas
- Pieteikumu atlase, kuriem nav augstākās izglītības vai darba pieredzes
SQL piemēri OR
Operatoram OR ir neskaitāmi pielietojumi, ja to izmanto kopā ar WHERE, citiem SQL operatoriem un citām SQL funkcijām. Turpinājumā aplūkosim trīs piemērus, lai jūs varētu labāk izprast, kā darbojas OR.
Pasūtījumu meklēšana noteiktās kategorijās
Pieņemsim, ka vēlaties klientu tabulā atrast personas, kuras ir pasūtījušas preces no kādas no kategorijām „Elektronika” un „Matu kopšanas līdzekļi” vai no abām. Rezultātos tiks iekļauti tikai tie ieraksti, kas atbilst vismaz vienam no šiem diviem nosacījumiem. Kategoriju norādīšanai izmantosim salīdzināšanas operatoru =.
Tās sintakse izskatās šādi:
SELECT *
FROM Customers
WHERE (Category = 'Electronics' OR Category = 'Hair')sqlPieteikumu atlase
Šajā piemērā ir tabula ar nosaukumu „Pieteikumu iesniedzēji”. Mēs vēlamies atrast tajā personas, kurām ir elektrotehnikas vai IT augstākā izglītība un vismaz trīs gadu darba pieredze. Lai to izdarītu, mēs apvienosim OR un AND. Meklējums izskatās šādi:
SELECT *
FROM Applicants
WHERE (Degree = 'Electrical engineering' OR Degree = 'IT')
AND (Experience >= 3)sqlMeklēšana pēc reģiona
Pēdējā piemērā mēs vēlamies meklēt klientus no Francijas vai Vācijas tabulā ar nosaukumu „Klienti”. Sintakse šim mērķim izskatās šādi:
SELECT *
FROM Customers
WHERE Country = 'France' OR Country = 'Germany'sqlVai ir kādas alternatīvas SQL OR?
Operators OR nodrošina vienkāršu un ātru veidu, kā veikt meklēšanu, pamatojoties uz vairākiem nosacījumiem. Šie SQL operatori pilda līdzīgu funkciju:
CASE: SQL izteiksmi CASE var izmantot arī kopā arWHERE,THENunELSEklauzulām, lai pārbaudītu nosacījumus un sašaurinātu sarežģītas analīzes līdz atbilstošiem rezultātiem. Tā tiek izvērtēta, izmantojot „IF-THEN-ELSE“ izteikumu, un nosacījumus pārbauda no apakšas uz augšu. Analīze tiek pārtraukta, tiklīdz ir izpildīts viens no nosacījumiem.IN: OperatoruINvar izmantotWHEREklauzulā, lai pārbaudītu ierakstus. Jūs varat definēt vērtības vai virknes, izmantojotIN, un pēc tam meklēt atbilstības tabulās vai kolonnās.EXISTS: SQL EXISTS var izmantot tabulā, lai pārbaudītu, vai vismaz viens ieraksts no citas tabulas atbilst pirmajai tabulai. Ja ir vismaz viena atbilde, rezultāts tiks pievienots mērķa tabulai. Šis operators ir noderīgs tikai tad, ja strādājat ar divām saistītām tabulām.