SQLWHEREklauzula filtruje riadky na základe jednej alebo viacerých podmienok, takže váš dotaz vráti (alebo upraví) iba záznamy, ktoré sa zhodujú. Používa sa v príkazoch SELECT UPDATE a DELETE a pracuje s údajmi z jednej tabuľky alebo z viacerých tabuliek po spojení.
Príklad: Najprv budeme vytvoriť demo SQL databázu a tabuľku, na ktorú použijeme príkaz WHERE Clause.
dotaz:
SELECT Name Department Salary
FROM Employees
WHERE Salary > 50000;
výstup:
Syntax:
SELECT column1 column2
FROM table_name
WHERE column_name operator value;
- stĺpec1 stĺpec2: Stĺpce, ktoré chcete načítať.
- table_name: Tabuľka, z ktorej sa pýtate.
- operátor: Logika porovnávania (napr. =< >LIKE).
- hodnota: Hodnota alebo vzor, podľa ktorého sa má filtrovať.
Príklady klauzuly WHERE
Vytvoríme základnú štruktúru tabuľky zamestnancov v SQL na vykonanie všetkých operácií s klauzulou where.
dotaz:
VYTVORIŤ TABUĽKU Emp1 (
PRIMÁRNY KĽÚČ EmpID INT
Názov VARCHAR(50)
Krajina VARCHAR(50)
Vek INT
Mob VARCHAR(15)
);
INSERT IN TO Emp1 VALUES
(1 'Shubham' 'India' 23 '738479734')
(2 'Aman' 'Austrália' 21 '436789555')
(3 'Naveen' 'Srí Lanka' 24 '34873847')
(4 'Aditya' 'Rakúsko' 21 '328440934')
(5 'Nishant' 'Španielsko' 22 '73248679');
SELECT * FROM Emp1;
výstup:
Príklad 1: Klauzula Where s logickými operátormi
Na načítanie záznamov zamestnanca s vekom 24 rokov.
dotaz:
SELECT * FROM Emp1 WHERE Age=24;výstup:
Príklad 2: WHERE s operátormi porovnávania
Na načítanie mena EmpID a krajiny zamestnancov s vekom vyšším ako 21 rokov.
dotaz:
java tutoriál
SELECT EmpID Name Country FROM Emp1 WHERE Age > 21;výstup:
Príklad 3: Klauzula Kde s BETWEEN Operátor
Operátor BETWEEN sa používa na filtrovanie záznamov v rámci špecifikovaného rozsahu a zahŕňa počiatočné aj koncové hodnoty. V tomto príklade chceme nájsť zamestnancov, ktorých vek je medzi 22 a 24, vrátane 22 a 24 rokov.
dotaz:
SELECT * FROM Emp1
WHERE Age BETWEEN 22 AND 24;
výstup:
Príklad 4: Klauzula Where s LIKE Operátor
Používa sa na získanie filtrovaných údajov vyhľadávaním konkrétneho vzoru v klauzule where. V tomto príklade chceme nájsť záznamy o Zamestnancoch, kde Meno začína písmenom. '%' (zástupný znak) tu označuje neskoršie znaky, ktoré môžu mať ľubovoľnú dĺžku a hodnotu.
dotaz:
SELECT * FROM Emp1 WHERE Name LIKE 'L%'; výstup:
Príklad 5: Klauzula Where s IN Operátor
Používa sa na načítanie filtrovaných údajov rovnako ako na načítanie operátorom '=', len rozdiel je v tom, že tu môžeme zadať viacero hodnôt, pre ktoré môžeme získať množinu výsledkov. Tu chceme nájsť mená zamestnancov, kde je vek 21 alebo 23.
dotaz:
SELECT Name FROM Emp1 WHERE Age IN (2123);výstup:
Operátory používané v doložke WHERE
| Operátor | Popis |
|---|---|
| > | Väčšie než |
| >= | Väčšie alebo rovné |
| < | Menej ako |
| <= | Menej než alebo rovné |
| = | Rovná sa |
| <> | Nerovná sa |
| MEDZI | V inkluzívnom rozsahu |
| LIKE | Vyhľadajte vzor |
| IN | Ak chcete zadať viacero možných hodnôt pre stĺpec |