L'SQLWHERELa clausola filtra le righe in base a una o più condizioni in modo che la query restituisca (o modifichi) solo i record corrispondenti. Viene utilizzato nelle istruzioni SELECT UPDATE e DELETE e funziona con i dati di una singola tabella o di più tabelle dopo le unioni
Esempio: Per prima cosa lo faremo creare un database SQL demo e una tabella su cui utilizzeremo il comando WHERE Clause.
Domanda:
SELECT Name Department Salary
FROM Employees
WHERE Salary > 50000;
Produzione:
Sintassi:
SELECT column1 column2
FROM table_name
WHERE column_name operator value;
- colonna1 colonna2: Colonne che desideri recuperare.
- nome_tabella: Tabella da cui stai eseguendo la query.
- operatore: Logica di confronto (es. =< >COME).
- valore: Il valore o il modello in base al quale filtrare.
Esempi di clausola WHERE
Creeremo una struttura di base della tabella dei dipendenti in SQL per eseguire tutte le operazioni della clausola where.
Domanda:
CREA TABELLA Dip1 (
EmpID INT CHIAVE PRIMARIA
Nome VARCHAR(50)
Paese VARCHAR(50)
Età INT
Mob VARCHAR(15)
);
INSERIRE NEI VALORI Emp1
(1 'Shubham' 'India' 23 '738479734')
(2 'Aman' 'Australia' 21 '436789555')
(3 'Naveen' 'Sri Lanka' 24 '34873847')
(4 'Aditya' 'Austria' 21 '328440934')
(5 'Nishant' 'Spagna' 22 '73248679');
SELEZIONA * DA Dip1;
Produzione:
Esempio 1: clausola Where con operatori logici
Per recuperare i record dei dipendenti con età pari a 24 anni.
Domanda:
SELECT * FROM Emp1 WHERE Age=24;Produzione:
formato stringa java
Esempio 2: WHERE con operatori di confronto
Per recuperare il nome EmpID e il paese dei dipendenti con età superiore a 21 anni.
concat stringhe java
Domanda:
SELECT EmpID Name Country FROM Emp1 WHERE Age > 21;Produzione:
Esempio 3: clausola Where con BETWEEN Operatore
L'operatore BETWEEN viene utilizzato per filtrare i record all'interno di un intervallo specificato e include sia il valore iniziale che quello finale. In questo esempio vogliamo trovare dipendenti la cui età sia compresa tra 22 e 24 anni, compresi sia 22 che 24 anni.
Domanda:
SELECT * FROM Emp1
WHERE Age BETWEEN 22 AND 24;
Produzione:
Esempio 4: clausola Where con LIKE Operatore
Viene utilizzato per recuperare i dati filtrati cercando un modello particolare nella clausola where. In questo esempio vogliamo trovare i record dei Dipendenti in cui il Nome inizia con la lettera. Il '%' (carattere jolly) indica i caratteri successivi che possono avere qualsiasi lunghezza e valore.
Domanda:
SELECT * FROM Emp1 WHERE Name LIKE 'L%'; Produzione:
Esempio 5: clausola Where con IN Operatore
Viene utilizzato per recuperare i dati filtrati uguali a quelli recuperati dall'operatore '=', la differenza è che qui possiamo specificare più valori per i quali possiamo ottenere il set di risultati. Qui vogliamo trovare i nomi dei dipendenti in cui l'età è 21 o 23.
Domanda:
SELECT Name FROM Emp1 WHERE Age IN (2123);Produzione:
Operatori utilizzati nella clausola WHERE
| Operatore | Descrizione |
|---|---|
| > | Maggiore di |
| >= | Maggiore o uguale a |
| < | Meno di |
| <= | Minore o uguale a |
| = | Uguale a |
| <> | Non uguale a |
| FRA | In una gamma inclusiva |
| COME | Cerca uno schema |
| IN | Per specificare più valori possibili per una colonna |