Determina se il valore di un'espressione rientra in un determinato intervallo di valori. È possibile usare l'operatore nelle istruzioni SQL.
Sintassi
espr [Not] Betweenvalore1Andvalore2
La sintassi dell'operatore Between...And include queste parti:
Parte |
Descrizione |
espr |
Espressione che identifica il campo contenente i dati da valutare. |
valore1, valore2 |
Espressione +in base a cui si vuole valutare espr. |
Osservazioni
Se il valore di espr è compreso tra valore1 e valore2 (inclusi), l'operatore Between...And operatore restituisce True; in caso contrario, restituisce False. È possibile includere l'operatore logico Not per valutare la condizione opposta, ovvero se espr non è incluso nell'intervallo definito da valore1 e valore2.
Usare l'operatore Between...And per stabilire se il valore di un campo rientra in un intervallo numerico specificato. L'esempio seguente determina se un ordine è stato spedito in una località all'interno di un determinato intervallo di codici postali. Se il codice postale è compreso tra 98101 e 98199, la funzione IIf restituisce "Locale". In caso contrario, restituisce "Nonlocale".
SELECT IIf(PostalCode Between 98101 And 98199, “Local”, “Nonlocal”) FROM Publishers
Se espr, valore1, o valore2 è Null, Between...And restituirà un valore Null.
Poiché caratteri jolly, ad esempio *, vengono considerate come valori letterali, non è possibile usarle con between ... E operatore. Ad esempio, non è possibile usare 980* e 989* per trovare tutti i codici postali che iniziano da 980 a 989. A tale scopo, sono disponibili due alternative. È possibile aggiungere un'espressione alla query che prende i tre caratteri sinistro del campo di testo e usare Between... E su quei caratteri. Oppure è possibile inserire i valori alti e bassi con caratteri aggiuntivi, in questo caso da 98000 a 98999 o da 98000 a 98999 - 9999 se si usano codici postali estesi. È necessario omettere – 0000 dai valori minimi perché altrimenti 98000 viene eliminato se alcuni codici postali hanno sezioni estese e altri no.