# 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“](https://www.ionos.com/lv-lv/digitalguide/serveris/konfiguracija/sql-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`:

<table>
  <thead>
    <tr>
      <th>SQL `OR`</th>
      <th>SQL `AND`</th>
      <th>SQL `NOT`</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Filtrē ierakstus, kas atbilst vismaz vienam no nosacījumiem</td>
      <td>Filtrē datus, kas atbilst visiem nosacījumiem</td>
      <td>Izlaiž informāciju, kas neatbilst nosacījumam</td>
    </tr>
    <tr>
      <td>Paplašina meklēšanu ar dažādu informāciju</td>
      <td>Sašaurina meklēšanu līdz nosacījumu kombinācijai, kuriem abiem ir jābūt izpildītiem</td>
      <td>Izlaiž neatbilstošu informāciju, izmantojot izslēgšanas kritērijus</td>
    </tr>
  </tbody>
</table>

Tip Nav pieredzes [SQL](https://www.ionos.com/lv-lv/digitalguide/serveris/prasmes-un-zinasanas/kas-ir-sql/) jomā? Nav problēmu! Mūsu [SQL ievads ar piemēriem](https://www.ionos.com/lv-lv/digitalguide/serveris/konfiguracija/sql-ievads-ar-piemeriem/) piedāvā ātrkursu par pamatiem.

## Kāda ir SQL `OR` sintakse?

`OR` pamatgramatika izskatās šādi:

```sql
SELECT  *
FROM  Table
WHERE  condition1  OR  condition2  OR …
```

Tajā 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ā ar `WHERE`, 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.

```sql
SELECT  *
FROM  Table
WHERE  condition1 AND (condition2 OR condition3)
```

### SQL `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.

```sql
SELECT  *
FROM  Table
WHERE  NOT  (condition1  OR  condition2)
```

## Kā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:

```sql
SELECT  *
FROM  Customers
WHERE  (Category  =  'Electronics'  OR  Category =  'Hair')
```

### Pieteikumu 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:

```sql
SELECT  *
FROM  Applicants
WHERE  (Degree  =  'Electrical engineering'  OR  Degree  =  'IT')
AND (Experience  >=  3)
```

### Meklēš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:

```sql
SELECT  *
FROM  Customers
WHERE  Country  =  'France'  OR   Country  =  'Germany'
```

## Vai 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ā ar `WHERE`, `THEN` un `ELSE` klauzulā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`: Operatoru `IN` var izmantot `WHERE` klauzulā, lai pārbaudītu ierakstus. Jūs varat definēt vērtības vai virknes, izmantojot `IN`, 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.


This is a markdown version of: [https://www.ionos.com/lv-lv/digitalguide/serveris/konfiguracija/sql-vai/](https://www.ionos.com/lv-lv/digitalguide/serveris/konfiguracija/sql-vai/) for AI/LLM consumption.