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

<table>
  <thead>
    <tr>
      <th>SQL `OR`</th>
      <th>SQL `AND`</th>
      <th>SQL `NOT`</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Filtruoja įrašus, kurie atitinka bent vieną iš sąlygų</td>
      <td>Filtruoja duomenis, kurie atitinka visas sąlygas</td>
      <td>Praleidžia informaciją, kuri neatitinka sąlygos</td>
    </tr>
    <tr>
      <td>Išplečia paiešką, įtraukdamas kitą informaciją</td>
      <td>Siaurina paiešką iki sąlygų derinio, kurias abi tenkina</td>
      <td>Praleidžia nereikšmingą informaciją, naudodamas išskyrimo kriterijus</td>
    </tr>
  </tbody>
</table>

Tip Neturite [SQL](https://www.ionos.com/lt-lt/digitalguide/serveris/zinios/kas-yra-sql/) žinių? Nėra problemos! Mūsų [SQL įvadas su pavyzdžiais](https://www.ionos.com/lt-lt/digitalguide/serveris/konfiguracija/ivadas-i-sql-su-pavyzdziais/) – tai intensyvus pagrindų kursas.

## Kokia yra SQL `OR` sintaksė?

Pagrindinė komandos `OR` sintaksė atrodo taip:

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

Jame 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 su `WHERE`, 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ų.

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

### SQL `OR` kartu su SQL `NOT`

Galite derinti SQL `OR` ir `NOT`, kad **būtų pašalinti duomenys**, atitinkantys bent vieną iš nurodytų sąlygų.

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

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

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

### Pareiš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:

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

### Paieška pagal regioną

Paskutiniame pavyzdyje norime lentelėje „Klientai“ ieškoti klientų iš Prancūzijos arba Vokietijos. Sintaksė atrodo taip:

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

## Ar 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 su `WHERE`, `THEN` ir `ELSE` są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`: Operatorius `IN` gali būti naudojamas `WHERE` sąlygoje įrašams tikrinti. Galite apibrėžti reikšmes arba eilutes naudodami `IN` ir 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.


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