SQLWHEREklauzula filtrē rindas, pamatojoties uz vienu vai vairākiem nosacījumiem, tāpēc vaicājums atgriež (vai modificē) tikai atbilstošos ierakstus. Tas tiek izmantots priekšrakstos SELECT UPDATE un DELETE un darbojas ar datiem no vienas tabulas vai no vairākām tabulām pēc savienošanas.
Piemērs: Vispirms mēs to darīsim izveidot demo SQL datu bāze un tabula, kurā izmantosim komandu WHERE Clause.
Vaicājums:
SELECT Name Department Salary
FROM Employees
WHERE Salary > 50000;
Izvade:
Sintakse:
SELECT column1 column2
FROM table_name
WHERE column_name operator value;
- kolonna 1 kolonna 2: Kolonnas, kuras vēlaties izgūt.
- tabulas_nosaukums: Tabula, no kuras veicat vaicājumu.
- operators: Salīdzināšanas loģika (piemēram, =< >PATĪK).
- vērtība: Vērtība vai modelis, pēc kura jāfiltrē.
WHERE klauzulas piemēri
Mēs izveidosim pamata darbinieku tabulas struktūru SQL lai veiktu visas kur klauzulas darbības.
Vaicājums:
IZVEIDOT TABULU Emp1 (
EmpID INT PRIMARY KEY
Vārds VARCHAR(50)
Valsts VARCHAR (50)
Vecums INT
Mob VARCHAR (15)
);
INSERT INTO Emp1 VALUES
(1 'Shubham' 'India' 23 '738479734')
(2 'Aman' 'Australia' 21 '436789555')
(3 'Naveen' 'Sri Lanka' 24 '34873847')
(4 'Aditya' 'Austria' 21'328440934')
(5 'Nishant' 'Spain' 22 '73248679');
SELECT * FROM Emp1;
Izvade:
1. piemērs: Kur klauzula ar loģiskajiem operatoriem
Lai iegūtu ierakstus par darbinieku, kura vecums ir 24 gadi.
Vaicājums:
SELECT * FROM Emp1 WHERE Age=24;Izvade:
2. piemērs: WHERE ar salīdzināšanas operatoriem
Lai iegūtu EmpID nosaukumu un valsti darbiniekiem, kuri ir vecāki par 21 gadu.
Vaicājums:
SELECT EmpID Name Country FROM Emp1 WHERE Age > 21;Izvade:
3. piemērs. Kur klauzula ar BETWEEN Operators
Operatoru BETWEEN izmanto, lai filtrētu ierakstus noteiktā diapazonā, un tas ietver gan sākuma, gan beigu vērtības. Šajā piemērā mēs vēlamies atrast darbiniekus, kuru vecums ir no 22 līdz 24 gadiem, tostarp gan no 22 līdz 24 gadiem.
Vaicājums:
SELECT * FROM Emp1
WHERE Age BETWEEN 22 AND 24;
Izvade:
4. piemērs: Kur klauzula ar LIKE Operators
To izmanto, lai izgūtu filtrētus datus, meklējot konkrētu modeli kur klauzulā. Šajā piemērā mēs vēlamies atrast darbinieku ierakstus, kuros vārds sākas ar burtu. "%" (aizstājējzīme) šeit apzīmē vēlākās rakstzīmes, kurām var būt jebkurš garums un vērtība.
Vaicājums:
SELECT * FROM Emp1 WHERE Name LIKE 'L%'; Izvade:
5. piemērs: kur klauzula ar IN Operators
To izmanto, lai ielādētu filtrētos datus tāpat kā operatoram '=', tikai atšķirība ir tāda, ka šeit mēs varam norādīt vairākas vērtības, kurām varam iegūt rezultātu kopu. Šeit mēs vēlamies atrast to darbinieku vārdus, kuru vecums ir 21 vai 23 gadi.
Vaicājums:
SELECT Name FROM Emp1 WHERE Age IN (2123);Izvade:
Klauzulā WHERE izmantotie operatori
| Operators | Apraksts |
|---|---|
| > | Lielāks Nekā |
| >= | Lielāks par vai vienāds ar |
| < | Mazāk nekā |
| <= | Mazāks par vai vienāds ar |
| = | Vienāds ar |
| <> | Nav vienāds ar |
| STARP | Iekļaujošā diapazonā |
| PATĪK | Meklējiet modeli |
| IN | Lai norādītu vairākas kolonnas iespējamās vērtības |