Maison  >  Article  >  base de données  >  Comment utiliser le mot-clé MySQL Where

Comment utiliser le mot-clé MySQL Where

青灯夜游
青灯夜游original
2022-02-24 18:51:135677parcourir

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 ;".

Comment utiliser le mot-clé MySQL Where

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.

MySQL WHERE : données de requête conditionnelles

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn