V čom je PostgreSQL?
Operátor IN sa používa v klauzule WHERE, ktorá umožňuje skontrolovať, či je hodnota prítomná v zozname ďalších hodnôt. Funkcia Prevádzka pomáha znižovať potrebu viacerých stavov ALEBO v príkazoch SELECT, UPDATE, INSERT alebo DELETE.
V tomto výučbe PostgreSQL sa dozviete toto:
- V čom je PostgreSQL?
- Syntax
- S Charakterom
- S číselnými hodnotami
- Pomocou operátora NOT
- Pomocou pgAdmin
Syntax
Operátor IN má nasledujúcu syntax:
value IN (value_1, value_2,… )
Hodnota je hodnota, ktorú v zozname kontrolujete.
Hodnota_1, hodnota_2
... sú hodnoty v zozname.Ak sa hodnota nachádza v zozname, operátor vráti hodnotu true.
Zoznam môže byť sada čísel reťazcov alebo dokonca výstupný výsledok príkazu SELECT, ako je uvedené nižšie:
value IN (SELECT value FROM table-name);
Výrok umiestnený v zátvorke je známy ako poddotaz.
S Charakterom
Ukážme, ako môžete používať operátor IN s hodnotami znakov.
Zvážte nasledujúcu tabuľku:
Zamestnanci:
Spustíme nasledujúci dotaz proti vyššie uvedenej tabuľke:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Vráti nasledujúce:
Máme zoznam troch mien. Hľadáme, či môžeme nájsť niektoré z týchto mien v stĺpci mien v tabuľke Zamestnanci. Kate Joel bola priradená k jednému zo záznamov tabuľky a jej podrobnosti boli vrátené.
S číselnými hodnotami
Teraz sa pozrime, ako môžeme použiť operátor IN s číselnými hodnotami.
Zvážte nižšie uvedenú cenovú tabuľku:
Cena:
Môžeme spustiť nasledujúci dotaz proti tabuľke:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Takto sa vráti toto:
Vytvorili sme zoznam so 4 číselnými hodnotami. Preverujeme, či môžeme niektorú z týchto hodnôt priradiť k hodnotám uvedeným v stĺpci cena v tabuľke Cena. Zhodli sa dve hodnoty a ich podrobnosti sa vrátili.
Pomocou operátora NOT
Operátor IN je možné používať spolu s operátorom NOT. Vráti hodnoty, ktoré sa v zadanom stĺpci nenachádzajú. Na demonštráciu to použijeme tabuľku cien.
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Takto sa vráti toto:
Vytvorili sme zoznam so 4 číselnými hodnotami. Hodnoty, ktoré nie sú súčasťou zoznamu, kontrolujeme v stĺpci Cena v tabuľke Cena. Dve hodnoty, 250 a 300, sa nenašli. Preto boli vrátené ich podrobnosti.
Pomocou pgAdmin
Teraz sa pozrime, ako je možné vykonať akcie pomocou pgAdmin.
S Charakterom
To isté dosiahnete prostredníctvom pgAdmin:
Krok 1) Prihláste sa do svojho účtu pgAdmin.
Krok 2)
- Na navigačnom paneli vľavo kliknite na položku Databázy.
- Kliknite na ukážku.
Krok 3) Zadajte dopyt do editora dotazov:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Krok 4) Kliknite na tlačidlo Vykonať.
Mal by vrátiť nasledujúce:
S číselnými hodnotami
To isté dosiahnete prostredníctvom pgAdmin:
Krok 1) Prihláste sa do svojho účtu pgAdmin.
Krok 2)
- Na navigačnom paneli vľavo kliknite na položku Databázy.
- Kliknite na ukážku.
Krok 3) Zadajte dopyt do editora dotazov:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Krok 4) Kliknite na tlačidlo Vykonať.
Mal by vrátiť nasledujúce:
Pomocou operátora NOT
To isté dosiahnete prostredníctvom pgAdmin:
Krok 1) Prihláste sa do svojho účtu pgAdmin.
Krok 2)
- Na navigačnom paneli vľavo kliknite na položku Databázy.
- Kliknite na ukážku.
Krok 3) Zadajte dopyt do editora dotazov:
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Krok 4) Kliknite na tlačidlo Vykonať.
Mal by vrátiť nasledujúce:
Zhrnutie:
- Operátor IN sa používa s operátorom WHERE. Umožňuje skontrolovať, či sa konkrétna hodnota nachádza v konkrétnej tabuľke.
- Operátor IN pomáha pri znižovaní potreby viacerých operátorov OR v príkazoch SELECT, UPDATE, INSERT alebo DELETE.
- Pri vytváraní zoznamu znakov na kontrolu prítomnosti hodnoty by mala byť každá hodnota v zozname uzavretá v jednoduchých úvodzovkách.
- Operátor IN možno použiť aj s číselnými hodnotami.
- Keď sa použije operátor IN spolu s operátorom NOT, vráti všetky hodnoty, ktoré sa v zadanom stĺpci nenachádzajú.
Stiahnite si databázu použitú v tomto výučbe