SQLWHEREklauzule filtruje řádky na základě jedné nebo více podmínek, takže váš dotaz vrací (nebo upravuje) pouze záznamy, které se shodují. Používá se napříč příkazy SELECT UPDATE a DELETE a pracuje s daty z jedné tabulky nebo z více tabulek po spojení.
10 ml až oz
Příklad: Nejprve budeme vytvořit ukázkovou SQL databázi a tabulku, na které použijeme pří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;
- sloupec1 sloupec2: Sloupce, které chcete načíst.
- název_tabulky: Tabulka, ze které se dotazujete.
- operátor: Srovnávací logika (např. =< >JAKO).
- hodnota: Hodnota nebo vzor, podle kterého se má filtrovat.
Příklady klauzule WHERE
Vytvoříme základní strukturu tabulky zaměstnanců v SQL pro provádění všech operací s klauzulí where.
Dotaz:
VYTVOŘIT TABULKU Emp1 (
PRIMÁRNÍ KLÍČ EmpID INT
Jméno VARCHAR(50)
Země VARCHAR(50)
Věk INT
Mob VARCHAR(15)
);
INSERT IN TO Emp1 VALUES
(1 'Shubham' 'India' 23 '738479734')
(3 'Naveen' 'Srí Lanka' 24 '34873847')
(4 'Aditya' 'Rakousko' 21 '328440934')
(5 'Nishant' 'Španělsko' 22 '73248679');
SELECT * FROM Emp1;
výstup:
algoritmus řazení vložení
Příklad 1: Klauzule Where s logickými operátory
Chcete-li načíst záznamy o zaměstnanci ve věku 24 let.
Dotaz:
SELECT * FROM Emp1 WHERE Age=24;výstup:
Příklad 2: WHERE s porovnávacími operátory
Chcete-li načíst EmpID jméno a zemi zaměstnanců s věkem vyšším než 21.
Dotaz:
SELECT EmpID Name Country FROM Emp1 WHERE Age > 21;výstup:
unordered_map c++
Příklad 3: Klauzule Where s BETWEEN Operátor
Operátor BETWEEN se používá k filtrování záznamů v určeném rozsahu a zahrnuje počáteční i koncové hodnoty. V tomto příkladu chceme najít zaměstnance, jejichž věk je mezi 22 a 24, včetně 22 a 24 let.
Dotaz:
SELECT * FROM Emp1
WHERE Age BETWEEN 22 AND 24;
výstup:
Příklad 4: Klauzule Where s LIKE Operátor
Používá se k načítání filtrovaných dat hledáním konkrétního vzoru v klauzuli where. V tomto příkladu chceme najít záznamy o zaměstnancích, kde Jméno začíná písmenem. '%' (zástupný znak) zde označuje pozdější znaky, které mohou mít libovolnou délku a hodnotu.
Dotaz:
SELECT * FROM Emp1 WHERE Name LIKE 'L%'; výstup:
počítač vynalezl který rok
Příklad 5: Klauzule Where s IN Operátor
Používá se k načtení filtrovaných dat stejně jako k načtení operátorem '=', jen rozdíl je v tom, že zde můžeme zadat více hodnot, pro které můžeme získat sadu výsledků. Zde chceme najít jména zaměstnanců, kde je věk 21 nebo 23.
Dotaz:
SELECT Name FROM Emp1 WHERE Age IN (2123);výstup:
Operátory používané v doložce WHERE
| Operátor | Popis |
|---|---|
| > | Větší než |
| >= | Větší než nebo rovno |
| < | Méně než |
| <= | Menší než nebo rovno |
| = | Rovná se |
| <> | Nerovná se |
| MEZI | V obsáhlém rozsahu |
| JAKO | Vyhledejte vzor |
| V | Chcete-li zadat více možných hodnot pro sloupec |