Determina se o valor de uma expressão se encaixa em um intervalo de valores especificado. É possível usar esse operador nas instruções SQL.
Sintaxe
expr [Not] Betweenvalor1Andvalor2
A sintaxe do operador Between...And tem estas partes:
Parte |
Descrição |
expr |
A expressão que identifica o campo que contém os dados que você deseja avaliar. |
valor1, valor2 |
Expressão em relação à qual você deseja avaliar expr. |
Comentários
Se o valor de expr estiver entre valor1 e valor2 (inclusive), o operador Between...And retornará True; caso contrário, retornará False. Você pode incluir o operador lógico Not para avaliar a condição oposta (ou seja, se expr não estiver no intervalo definido por valor1 e valor2).
Você pode usar Between...And para determinar se o valor de um campo se encaixa em um intervalo numérico específico. O exemplo a seguir determina se um pedido foi enviado para um local em um intervalo de códigos postais. Se o código postal estiver entre 98101 e 98199, a função IIf retornará "Local". Caso contrário, retornará "Nonlocal".
SELECT IIf(PostalCode Between 98101 And 98199, “Local”, “Nonlocal”) FROM Publishers
Se expr, valor1, ou valor2 for Null, Between...And retornará um valor Null.
Como caracteres curinga, como *, são tratados como literais, não é possível usá-los com o operador Between...And. Por exemplo, não é possível usar 980* e 989* para localizar todos os códigos postais que começam com 980 até 989. Mas você tem duas opções para fazer isso. Você pode adicionar uma expressão à consulta que retira os três caracteres à esquerda do campo de texto e usa Between...And nesses caracteres. Ou pode completar valores altos e baixos com caracteres extras — neste caso, 98000 a 98999 ou 98000 a 98999 – 9999, se estiver usando códigos postais estendidos. (Omita o – 0000 dos valores baixos, caso contrário, 98000 será eliminado se alguns códigos postais tiverem seções estendidas e outros não).