Clause MySQL « entre » : inclusivité prise en compte
Lors de l'utilisation de la clause « entre » dans les requêtes MySQL, il est essentiel de considérer sa non- caractère inclusif concernant la valeur finale. Par exemple, l'exécution d'une requête telle que :
select * from person where dob between '2011-01-01' and '2011-01-31'
permettrait de récupérer les résultats avec des dates de naissance (DOB) allant du « 2011-01-01 » au « 2011-01-30 », à l'exclusion des enregistrements avec une date de naissance. du '2011-01-31'.
Ce comportement peut être attribué à l'interprétation par MySQL du Clause "entre" comme expression logique ressemblant à :
(min <= expr AND expr <= max)
Pour tenir compte de cela et inclure les enregistrements où la date de naissance est « 2011-01-31 », la requête peut être modifiée de deux manières :
Méthode 1 : Utiliser des opérateurs de comparaison
En employant des opérateurs de comparaison, la requête peut vérifier explicitement les limites supérieure et inférieure :
select * from person where dob >= '2011-01-01' and dob <= '2011-01-31'
Méthode 2 : Utilisation de l'opérateur NOT BETWEEN
Alternativement, l'opérateur "NOT BETWEEN" peut être utilisé pour exclure une plage spécifique tout en incluant le point de terminaison souhaité :
select * from person where dob NOT BETWEEN '2011-01-02' and '2011-01-30'
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!