SQL BETWEEN: per trovare valori all’interno di un determinato intervallo
SQL BETWEEN è usato per definire un campo di valori. Questo operatore funziona con numeri, dati e testi.
Cos’è SQL BETWEEN?
Se vuoi visualizzare solo le voci di un database che sono comprese all’interno di un determinato intervallo di valori con l’aiuto dello Structured Query Language, l’operatore SQL BETWEEN è proprio ciò che ti serve. Può essere applicato non soltanto a valori numerici, ma funziona anche con i dati o addirittura con voci di testo. L’operatore lavora in modo inclusivo: la prima e l’ultima voce che delimitano l’intervallo sono comprese nel conteggio. SQL BETWEEN viene integrato in una condizione WHERE e funziona con i comandi SQL DELETE, INSERT, SELECT e UPDATE.
- Traffico illimitato e fino a 1 Gbit/s di larghezza di banda
- Storage SSD NVMe veloce
- Plesk Web Host Edition incluso
Sintassi e funzionamento
Analizziamo più da vicino l’interazione tra SQL BETWEEN con il comando SELECT e la condizione WHERE. La sintassi si presenta come segue:
SELECT colonna1, colonna2, …
FROM nome_della_tabella
WHERE nome_della_colonna BETWEEN valore iniziale AND valore finale;
sqlCon colonna1
, colonna2
, ecc. specifichi quali colonne devono essere visualizzate. Devi poi indicare il nome della tabella in cui si trovano queste colonne. In nome_della_colonna
determini quali valori devono essere presi in considerazione; con BETWEEN valore iniziale AND valore finale
indichi poi l’intervallo in cui devono rientrare i valori.
Esempi di utilizzo dell’operatore
Per illustrare meglio il funzionamento di SQL BETWEEN creiamo una tabella di esempio chiamata “Lista clienti”. In questa lista riportiamo numero cliente, nome, località, data dell’ordine, numero di articoli ordinati e importo totale in euro pagato da questi clienti.
Numero cliente | Nome | Località | Data | Articolo | Importo totale |
---|---|---|---|---|---|
1427 | Russo | Roma | 1/13/2024 | 14 | 634 |
1377 | Rossi | Milano | 1/19/2024 | 9 | 220 |
1212 | Bianchi | Milano | 1/3/2024 | 15 | 619 |
1431 | Mancini | Palermo | 1/19/2024 | 22 | 912 |
1118 | Innocenti | Firenze | 2/1/2024 | 10 | 312 |
Se ora vogliamo filtrare questa lista, possiamo usare questo operatore. Ad esempio, è possibile visualizzare solo i clienti che hanno speso tra 300 e 700 euro nel periodo considerato. Di seguito il relativo codice:
SELECT numero cliente, nome, località, data, articolo, importo totale
FROM lista clienti
WHERE importo totale BETWEEN 300 AND 700;
sqlL’output si presenterà come segue:
Numero cliente | Nome | Località | Data | Articolo | Importo totale |
---|---|---|---|---|---|
1427 | Russo | Roma | 1/13/2024 | 14 | 634 |
1212 | Bianchi | Milano | 1/3/2024 | 15 | 619 |
1118 | Innocenti | Firenze | 2/1/2024 | 10 | 312 |
Parole come intervallo di valori
SQL BETWEEN funziona anche con le parole, basandosi sulle lettere iniziali dei valori di testo inseriti. Nell’esempio che segue vogliamo considerare solo le voci che sono alfabeticamente comprese tra “Mancini” e “Russo”. Qui il codice:
SELECT numero cliente, nome, località, data, articolo, importo totale
FROM lista clienti
WHERE nome BETWEEN 'Mancini' AND 'Russo'
ORDER BY nome;
sqlOtteniamo questa nuova tabella:
Numero cliente | Nome | Località | Data | Articolo | Importo totale |
---|---|---|---|---|---|
1431 | Mancini | Palermo | 1/19/2024 | 22 | 912 |
1212 | Bianchi | Milano | 1/3/2024 | 15 | 619 |
1427 | Russo | Roma | 1/13/2024 | 14 | 634 |
Vengono considerate le voci “Mancini” e “Russo” perché l’operatore ha un funzionamento inclusivo. Con l’istruzione ORDER BY nome, il risultato viene restituito in ordine alfabetico.
Selezione per data
Con SQL BETWEEN possiamo anche visualizzare solo i processi d’ordine elaborati in un determinato intervallo di tempo. Nell’esempio che segue filtriamo la nostra lista clienti in base agli ordini tra il 10 e il 31 gennaio 2024. Di seguito il codice:
SELECT numero cliente, nome, località, data, articolo, importo totale
FROM lista clienti
WHERE data BETWEEN '1/10/2024' AND '1/31/2024';
sqlCome risultato otteniamo questa tabella:
Numero cliente | Nome | Località | Data | Articolo | Importo totale |
---|---|---|---|---|---|
1427 | Russo | Roma | 1/13/2024 | 14 | 634 |
1377 | Rossi | Milano | 1/19/2024 | 9 | 220 |
1431 | Mancini | Palermo | 1/19/2024 | 22 | 912 |
Operatori simili a SQL BETWEEN
Possiamo visualizzare anche solo i risultati che si trovano al di fuori dell’intervallo definito utilizzando NOT BETWEEN. La procedura è molto simile. Se nel nostro esempio vogliamo visualizzare solo i clienti che hanno speso meno di 300 o più di 700 euro, possiamo procedere come segue:
SELECT numero cliente, nome, località, data, articolo, importo totale
FROM lista clienti
WHERE importo totale NOT BETWEEN 300 AND 700;
sqlSaranno restituite solo due voci:
Numero cliente | Nome | Località | Data | Articolo | Importo totale |
---|---|---|---|---|---|
1377 | Rossi | Milano | 1/19/2024 | 9 | 220 |
1431 | Mancini | Palermo | 1/19/2024 | 22 | 912 |
L’hosting proprio come lo vuoi tu: con l’hosting SQL Server di IONOS non soltanto puoi scegliere tra MSSQL, MySQL o MariaDB, ma puoi contare anche su una consulenza personalizzata e prestazioni imbattibili.