SQL BETWEEN è usato per definire un campo di valori. Questo operatore funziona con numeri, dati e testi.

Cos’è SQL BETWEEN?

Se vuoi vi­sua­liz­za­re solo le voci di un database che sono comprese all’interno di un de­ter­mi­na­to in­ter­val­lo di valori con l’aiuto dello Struc­tu­red 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 ad­di­rit­tu­ra con voci di testo. L’operatore lavora in modo inclusivo: la prima e l’ultima voce che de­li­mi­ta­no l’in­ter­val­lo sono comprese nel conteggio. SQL BETWEEN viene integrato in una con­di­zio­ne WHERE e funziona con i comandi SQL DELETE, INSERT, SELECT e UPDATE.

Server virtuali (VPS)
Affidati ai VPS e server di IONOS, il tuo partner digitale cer­ti­fi­ca­to ISO
  • 1 Gbps di larghezza di banda e traffico il­li­mi­ta­to
  • Di­spo­ni­bi­li­tà del 99,99% e cer­ti­fi­ca­zio­ne ISO
  • As­si­sten­za 24/7 e con­su­len­te personale

Sintassi e fun­zio­na­men­to

Ana­liz­zia­mo più da vicino l’in­te­ra­zio­ne tra SQL BETWEEN con il comando SELECT e la con­di­zio­ne WHERE. La sintassi si presenta come segue:

SELECT colonna1, colonna2, …
FROM nome_della_tabella
WHERE nome_della_colonna BETWEEN valore iniziale AND valore finale;
sql

Con colonna1, colonna2, ecc. spe­ci­fi­chi quali colonne devono essere vi­sua­liz­za­te. Devi poi indicare il nome della tabella in cui si trovano queste colonne. In nome_della_colonna determini quali valori devono essere presi in con­si­de­ra­zio­ne; con BETWEEN valore iniziale AND valore finale indichi poi l’in­ter­val­lo in cui devono rientrare i valori.

Esempi di utilizzo dell’operatore

Per il­lu­stra­re meglio il fun­zio­na­men­to di SQL BETWEEN creiamo una tabella di esempio chiamata “Lista clienti”. In questa lista ri­por­tia­mo 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 vi­sua­liz­za­re solo i clienti che hanno speso tra 300 e 700 euro nel periodo con­si­de­ra­to. Di seguito il relativo codice:

SELECT numero cliente, nome, località, data, articolo, importo totale
FROM lista clienti
WHERE importo totale BETWEEN 300 AND 700;
sql

L’output si pre­sen­te­rà 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 in­ter­val­lo di valori

SQL BETWEEN funziona anche con le parole, basandosi sulle lettere iniziali dei valori di testo inseriti. Nell’esempio che segue vogliamo con­si­de­ra­re solo le voci che sono al­fa­be­ti­ca­men­te 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;
sql

Otteniamo 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 con­si­de­ra­te le voci “Mancini” e “Russo” perché l’operatore ha un fun­zio­na­men­to inclusivo. Con l’istru­zio­ne ORDER BY nome, il risultato viene re­sti­tui­to in ordine al­fa­be­ti­co.

Selezione per data

Con SQL BETWEEN possiamo anche vi­sua­liz­za­re solo i processi d’ordine elaborati in un de­ter­mi­na­to in­ter­val­lo 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';
sql

Come 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 vi­sua­liz­za­re anche solo i risultati che si trovano al di fuori dell’in­ter­val­lo definito uti­liz­zan­do NOT BETWEEN. La procedura è molto simile. Se nel nostro esempio vogliamo vi­sua­liz­za­re 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;
sql

Saranno re­sti­tui­te 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
Consiglio

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 con­su­len­za per­so­na­liz­za­ta e pre­sta­zio­ni im­bat­ti­bi­li.

Vai al menu prin­ci­pa­le