SQLWHEREklavzula filtrira vrstice na podlagi enega ali več pogojev, tako da vaša poizvedba vrne (ali spremeni) samo zapise, ki se ujemajo. Uporablja se v stavkih SELECT UPDATE in DELETE in deluje s podatki iz ene same tabele ali iz več tabel po združitvah
primer: Najprej bomo ustvariti demo podatkovno bazo SQL in tabelo, na kateri bomo uporabili ukaz WHERE Clause.
poizvedba:
SELECT Name Department Salary
FROM Employees
WHERE Salary > 50000;
Izhod:
Sintaksa:
SELECT column1 column2
FROM table_name
WHERE column_name operator value;
- stolpec1 stolpec2: Stolpci, ki jih želite pridobiti.
- ime_tabele: Tabela, iz katere povprašujete.
- operater: Logika primerjave (npr. =< >Všeč mi je).
- vrednost: Vrednost ali vzorec za filtriranje.
Primeri klavzule WHERE
Ustvarili bomo osnovno strukturo tabele zaposlenih v SQL za izvajanje vseh operacij klavzule where.
poizvedba:
USTVARI TABELO Emp1 (
EmpID INT PRIMARNI KLJUČ
Ime VARCHAR(50)
Država VARCHAR(50)
Starost INT
Mob VARCHAR(15)
);
VSTAVITE V Emp1 VREDNOSTI
(1 'Shubham' 'Indija' 23 '738479734')
(2 'Aman' 'Avstralija' 21 '436789555')
(3 'Naveen' 'Šri Lanka' 24 '34873847')
(4 'Aditya' 'Avstrija' 21 '328440934')
(5 'Nishant' 'Španija' 22 '73248679');
IZBERI * IZ Emp1;
Izhod:
Primer 1: stavek Where z logičnimi operatorji
Za pridobivanje evidenc zaposlenega, starega 24 let.
poizvedba:
SELECT * FROM Emp1 WHERE Age=24;Izhod:
Primer 2: WHERE s primerjalnimi operatorji
Za pridobitev imena EmpID in države zaposlenih, starejših od 21 let.
poizvedba:
SELECT EmpID Name Country FROM Emp1 WHERE Age > 21;Izhod:
Primer 3: stavek Where z BETWEEN Operater
Operator BETWEEN se uporablja za filtriranje zapisov v določenem obsegu in vključuje začetno in končno vrednost. V tem primeru želimo najti zaposlene, katerih starost je med 22 in 24, vključno z 22 in 24.
poizvedba:
SELECT * FROM Emp1
WHERE Age BETWEEN 22 AND 24;
Izhod:
Primer 4: stavek Where z LIKE Operater
Uporablja se za pridobivanje filtriranih podatkov z iskanjem določenega vzorca v klavzuli where. V tem primeru želimo najti zapise zaposlenih, kjer se ime začne s črko. '%' (nadomestni znak) označuje poznejše znake, ki so lahko poljubne dolžine in vrednosti.
poizvedba:
SELECT * FROM Emp1 WHERE Name LIKE 'L%'; Izhod:
Primer 5: stavek Where z IN Operater
Uporablja se za pridobivanje filtriranih podatkov, kot jih pridobiva operator '=', le razlika je v tem, da lahko tukaj določimo več vrednosti, za katere lahko dobimo niz rezultatov. Tukaj želimo najti imena zaposlenih, katerih starost je 21 ali 23 let.
poizvedba:
SELECT Name FROM Emp1 WHERE Age IN (2123);Izhod:
Operatorji, uporabljeni v stavku WHERE
| Operater | Opis |
|---|---|
| > | Večji od |
| >= | Večje ali enako |
| < | Manj kot |
| <= | Manj kot ali enako |
| = | Enako |
| <> | Ni enako |
| MED | V vključujočem obsegu |
| Všeč mi je | Poiščite vzorec |
| IN | Za podajanje več možnih vrednosti za stolpec |