- Catégories :
[ NOT ] BETWEEN¶
Renvoie TRUE
lorsque l’expression d’entrée (numérique ou chaîne) se trouve dans les limites inférieure et supérieure spécifiées.
Syntaxe¶
<expr> [ NOT ] BETWEEN <lower_bound> AND <upper_bound>
Notes sur l’utilisation¶
expr BETWEEN lower_bound AND upper_bound
équivaut àexpr >= lower_bound AND expr <= upper_bound
.La limite supérieure spécifiée doit être plus grande/supérieure à la limite inférieure.
Détails du classement¶
L’expression A BETWEEN X AND Y
équivaut à A >= X AND A <= Y
. Les classements utilisés pour comparer X
et Y
sont indépendants et n’ont pas besoin d’être identiques, mais ils doivent tous deux être compatibles avec le classement de A
.
Exemples¶
Voici quelques exemples simples d’utilisation de BETWEEN avec des valeurs numériques et des valeurs de chaîne :
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 | +--------+
L’exemple suivant utilise COLLATE
avec 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 | +-------------------------------------------+