- Categorias:
[ NOT ] BETWEEN¶
Retorna TRUE
quando a expressão de entrada (numérica ou cadeia de caracteres) estiver dentro dos limites inferior e superior especificados.
Sintaxe¶
<expr> [ NOT ] BETWEEN <lower_bound> AND <upper_bound>
Notas de uso¶
expr BETWEEN lower_bound AND upper_bound
é equivalente aexpr >= lower_bound AND expr <= upper_bound
.O limite superior especificado deve ser maior/superior do que o limite inferior.
Detalhes do agrupamento¶
A expressão A BETWEEN X AND Y
é equivalente a A >= X AND A <= Y
. Os agrupamentos usados para comparação com X
e Y
são independentes e não precisam ser idênticos, mas ambos precisam ser compatíveis com o agrupamento de A
.
Exemplos¶
Aqui estão alguns exemplos simples de utilização de BETWEEN com valores numéricos e cadeia de caracteres:
SELECT 'true' WHERE 1 BETWEEN 0 AND 10; +--------+ | 'TRUE' | |--------| | true | +--------+SELECT 'true' WHERE 1.35 BETWEEN 1 AND 2; +--------+ | 'TRUE' | |--------| | true | +--------+SELECT 'true' WHERE 'the' BETWEEN 'that' AND 'then'; +--------+ | 'TRUE' | |--------| | true | +--------+
O exemplo seguinte usa COLLATE
com BETWEEN
:
SELECT 'm' BETWEEN COLLATE('A', 'lower') AND COLLATE('Z', 'lower'); +-------------------------------------------------------------+ | 'M' BETWEEN COLLATE('A', 'LOWER') AND COLLATE('Z', 'LOWER') | |-------------------------------------------------------------| | True | +-------------------------------------------------------------+ SELECT COLLATE('m', 'upper') BETWEEN 'A' AND 'Z'; +-------------------------------------------+ | COLLATE('M', 'UPPER') BETWEEN 'A' AND 'Z' | |-------------------------------------------| | True | +-------------------------------------------+