Maison >base de données >tutoriel mysql >MySQL ENTRE Utilisation
Syntaxe MySQL BETWEEN
L'opérateur BETWEEN est utilisé dans les expressions WHERE pour sélectionner une plage de données entre deux valeurs. BETWEEN est utilisé avec AND, la syntaxe est la suivante :
WHERE column BETWEEN value1 AND value2 WHERE column NOT BETWEEN value1 AND value2
Habituellement, la valeur 1 doit être inférieure à la valeur 2. Lorsque BETWEEN est précédé de l'opérateur NOT, cela signifie l'opposé de BETWEEN, c'est-à-dire la sélection d'une valeur en dehors de cette plage.
ENTRE instance
Sélectionnez les données utilisateur avec un UID compris entre 2 et 5 :
SELECT * FROM user WHERE uid BETWEEN 2 AND 5
Renvoyer les résultats de la requête comme suit :
En plus des types numériques, BETWEEN prend également en charge les plages de chaînes. Ce qui suit sélectionne tous les utilisateurs dont le nom d'utilisateur est compris entre a et j (et inclut la lettre unique k/K) :
SELECT * FROM user WHERE username BETWEEN 'a' AND 'k'
Plages de caractères. prennent également en charge les caractères chinois, mais en général, ils n'ont aucun sens.
MySQL BETWEEN Boundary
Bien que presque toutes les bases de données prennent en charge l'opérateur BETWEEN ... AND, différentes bases de données gèrent BETWEEN ... AND différemment. Dans MySQL, BETWEEN contient les valeurs limites value1 et value2, comme l'exemple ci-dessus de sélection de données utilisateur avec un uid compris entre 2 et 5.
Certaines bases de données ne contiennent pas de valeurs limites value1 et value2 (similaires à > et = et
MySQL BETWEEN time and date
BETWEEN AND est souvent utilisé pour récupérer du contenu dans une plage d'heure ou de date. Voici quelques exemples courants BETWEEN d'heure et de date :
// int 时间戳格式,查询 2008-08-08 20:00:00 到 2009-01-01 零点之前的数据 SELECT * FROM table WHERE column_time BETWEEN 1218196800 AND 1230739199 // DATE 格式,查询 2008-08-08 到 2009-01-01 零点之前的数据 SELECT * FROM table WHERE column_time BETWEEN '2008-08-08' AND '2009-01-01' // DATETIME 格式,查询 2008-08-08 20:00:00 到 2009-01-01 零点之前的数据 SELECT * FROM table WHERE column_time BETWEEN '2008-08-08 20:00:00' AND '2008-12-31 23:59:59'Mais pour interroger les données à l'heure actuelle, il est recommandé d'utiliser l'opérateur >= :
// DATETIME 格式,查询 2008-08-08 20:00:00 到当前时刻的数据 SELECT * FROM table WHERE column_time >= '2008-08-08 20:00:00'On voit que les mêmes exigences et différents types de champs peuvent être écrits différemment. En termes d'efficacité, le format d'horodatage int est le plus efficace. Bien que les exemples ci-dessus de BETWEEN soient tous des requêtes SELECT, BETWEEN peut également être utilisé dans UPDATE, DELETE et d'autres SQL qui appliquent des expressions WHERE. Comparaison de données MySQL BETWEENBETWEEN a également une fonction de comparaison de données, la syntaxe est la suivante :
expr BETWEEN min AND maxLorsque la valeur de l'expression expr est supérieure ou égale à min et inférieur ou égal à max , la valeur de retour de BETWEEN est 1, sinon elle renvoie 0. Grâce à cette fonction, vous pouvez déterminer si une expression ou une valeur se trouve dans une certaine plage :
// 返回 0 SELECT 1 BETWEEN 2 AND 3 // 返回 1 SELECT 'b' BETWEEN 'a' AND 'c' // 判断日期范围 SELECT 20080808 BETWEEN 20080101 AND 20090101ENTRE et les opérateurs tels que =, > dans certains cas Fonctions similaires, mais BETWEEN a un niveau de calcul plus élevé et est encore plus efficace. Bien sûr, BETWEEN n'est pas assez flexible en raison de problèmes de valeurs limites, donc différentes situations nécessitent un traitement spécifique quant à l'opérateur à utiliser. Ce qui précède est le contenu de l'utilisation de MySQL ENTRE. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !