Maison > Article > base de données > Comment utiliser le mot-clé MySQL Where
Dans MySQL, le mot-clé Where doit être utilisé avec l'instruction SELECT pour spécifier les conditions de requête, c'est-à-dire interroger et renvoyer conditionnellement les données de la table de données ; la syntaxe "SELECT {*|field column name} FROM data table name OÙ Conditions de requête ;".
L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.
Dans MySQL, si vous devez interroger conditionnellement les données d'une table de données, vous pouvez utiliser le mot-clé WHERE pour spécifier les conditions de requête.
Le format de syntaxe d'utilisation du mot-clé WHERE est le suivant :
SELECT {*|字段列名} FROM 数据表名 WHERE 查询条件;
Les conditions de requête peuvent être :
Conditions de requête avec des opérateurs de comparaison et des opérateurs logiques
Conditions de requête avec le mot-clé BETWEEN AND
Conditions de requête avec le mot-clé IS NULL
Conditions de requête avec le mot-clé IN
Conditions de requête avec le mot-clé LIKE
Instruction de requête à condition unique
La condition unique fait référence à Il n'y a qu'une seule condition de requête après le OÙ mot-clé.
Exemple 1
Interrogez les noms des étudiants mesurant 170 cm dans la table de données tb_students_info. L'instruction SQL et les résultats d'exécution sont les suivants.
mysql> SELECT name,height FROM tb_students_info -> WHERE height=170; +-------+--------+ | name | height | +-------+--------+ | Susan | 170 | +-------+--------+ 1 row in set (0.17 sec)
Vous pouvez constater que la valeur du champ hauteur enregistrée dans les résultats de la requête est égale à 170. S'il n'y a aucun enregistrement correspondant aux conditions de requête dans la table de données lors de la requête basée sur les conditions spécifiées, le système affichera « Ensemble vide (0,00 s) ».
Exemple 2
Interrogez les noms des étudiants dont l'âge est inférieur à 22 ans dans la table de données tb_students_info. L'instruction SQL et les résultats d'exécution sont les suivants.
mysql> SELECT name,age FROM tb_students_info -> WHERE age<22; +------+------+ | name | age | +------+------+ | John | 21 | +------+------+ 1 row in set (0.05 sec)
Vous pouvez voir que la valeur du champ âge de tous les enregistrements dans les résultats de la requête est inférieure à 22 ans et que les enregistrements supérieurs ou égaux à 22 ans ne sont pas renvoyés.
Instructions de requête multi-conditions
Il peut y avoir plusieurs conditions de requête après le mot-clé WHERE, ce qui peut rendre les résultats de la requête plus précis. Plusieurs conditions de requête sont séparées par des opérateurs logiques AND (&&), OR (||) ou XOR.
ET : les enregistrements ne seront interrogés que lorsqu'ils remplissent toutes les conditions de requête.
OR : les enregistrements ne seront interrogés que lorsqu'ils remplissent une condition de requête.
XOR : Les enregistrements ne seront interrogés que lorsqu'ils remplissent l'une des conditions et ne remplissent pas l'autre condition.
Exemple 3
Interrogez les informations sur les étudiants dont l'âge est supérieur à 21 ans et la taille est supérieure ou égale à 175 dans la table tb_students_info. L'instruction SQL et les résultats d'exécution sont les suivants.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 AND height>=175; +--------+------+--------+ | name | age | height | +--------+------+--------+ | Henry | 23 | 185 | | Jim | 24 | 175 | | Thomas | 22 | 178 | +--------+------+--------+ 3 rows in set (0.00 sec)
Vous pouvez voir que le champ âge de tous les enregistrements dans les résultats de la requête est supérieur à 21 et que le champ hauteur est supérieur ou égal à 175.
Exemple 4
Interrogez les informations sur les étudiants dont l'âge est supérieur à 21 ans ou dont la taille est supérieure ou égale à 175 dans la table tb_students_info. L'instruction SQL et les résultats d'exécution sont les suivants.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 OR height>=175; +--------+------+--------+ | name | age | height | +--------+------+--------+ | Dany | 25 | 160 | | Green | 23 | 158 | | Henry | 23 | 185 | | Jane | 22 | 162 | | Jim | 24 | 175 | | Lily | 22 | 165 | | Susan | 23 | 170 | | Thomas | 22 | 178 | | Tom | 23 | 165 | +--------+------+--------+ 9 rows in set (0.00 sec)
Vous pouvez voir que le champ âge de tous les enregistrements dans les résultats de la requête est supérieur à 21 ou que le champ taille est supérieur ou égal à 175.
Exemple 5
Interrogez les informations sur les étudiants dont l'âge est supérieur à 21 ans et la taille est inférieure à 175 et les informations sur les étudiants dont l'âge est inférieur à 21 ans et la taille est supérieure ou égale à 175 dans la table tb_students_info. L'instruction et les résultats d'exécution sont les suivants.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 XOR height>=175; +-------+------+--------+ | name | age | height | +-------+------+--------+ | Dany | 25 | 160 | | Green | 23 | 158 | | Jane | 22 | 162 | | Lily | 22 | 165 | | Susan | 23 | 170 | | Tom | 23 | 165 | +-------+------+--------+ 7 rows in set (0.00 sec)
Vous pouvez voir que le champ d'âge de tous les enregistrements dans les résultats de la requête est supérieur à 21 et que le champ de taille est inférieur à 175. Il n'y a aucun enregistrement dans la table de données tb_students_info dont le champ d'âge est inférieur à 21 et dont le champ de taille est supérieur ou égal à 175.
OR, AND et XOR peuvent être utilisés ensemble, mais faites attention à la priorité des opérateurs lorsque vous les utilisez. Pour plus d'informations sur la priorité des opérateurs dans MySQL, vous pouvez lire la section "Priorité des opérateurs MySQL".
Plus il y a de conditions de requête, moins d'enregistrements seront récupérés. Parce que plus les conditions sont définies, plus l'instruction de requête comporte de restrictions et moins il y a d'enregistrements pouvant remplir toutes les conditions. Afin que les enregistrements interrogés correspondent exactement à vos souhaits, vous pouvez définir les conditions de requête dans l'instruction WHERE pour qu'elles soient plus spécifiques.
【Recommandation associée : tutoriel vidéo mysql】
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!