Instruction WHERE IN dans MySQL

Preet Sanghavi 29 mars 2022
Instruction WHERE IN dans MySQL

Dans ce tutoriel, nous visons à explorer comment utiliser la clause WHERE IN dans MySQL.

Il existe de nombreuses techniques de filtrage de données différentes dans MySQL. Les instructions IF ELSE, CASE et WHERE en sont des exemples. Explorons les détails d’implémentation de la clause WHERE IN dans cet article.

La clause WHERE IN nous aide à définir une condition particulière pour le filtrage des données. Il prend en compte le nom de la colonne et l’ensemble dans lequel les valeurs doivent être trouvées. La partie IN de la requête permet de rechercher la valeur dans l’ensemble défini.

Comprenons comment cette méthode fonctionne. Avant de commencer, nous devons créer un jeu de données factice en créant une table, student_details, ainsi que quelques lignes.

-- create the table student_details
CREATE TABLE student_details(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName) 
 VALUES(1,"Preet","Sanghavi"),
 (2,"Rich","John"),
 (3,"Veron","Brow"),
 (4,"Geo","Jos"),
 (5,"Hash","Shah"),
 (6,"Sachin","Parker"),
 (7,"David","Miller");

Pour afficher les entrées dans les données, nous utilisons le code suivant.

SELECT * FROM student_details;

Production :

stu_id	stu_firstName	stu_lastName
1	      Preet	        Sanghavi
2	      Rich	        John
3	      Veron	        Brow
4	      Geo	        Jos
5	      Hash	        Shah
6	      Sachin	    Parker
7	      David	        Miller

Instruction WHERE IN dans MySQL

La syntaxe de base de la technique WHERE IN est la suivante.

SELECT * FROM name_of_the_table WHERE column_name IN <set_condition>;

Essayons de filtrer les étudiants à partir de la table student_details.

Nous récupérons uniquement les enregistrements des étudiants dont le stu_id est inférieur à 3. En utilisant la clause WHERE IN, cette opération peut être effectuée à l’aide de la requête suivante.

SELECT * FROM student_details WHERE stu_id IN (1,2,3);

Production :

stu_id	stu_firstName	stu_lastName
1	      Preet	        Sanghavi
2	      Rich	        John
3	      Veron	        Brow

Comme indiqué dans le bloc de code ci-dessus, nous récupérons les enregistrements avec stu_id comme 1, 2 ou 3 uniquement si nécessaire.

Une alternative à la technique WHERE IN est l’instruction CASE WHEN. Une procédure stockée IF ELSE peut également être utilisée à la place de la clause WHERE IN.

Par conséquent, à l’aide de l’instruction WHERE avec IN, nous pouvons filtrer efficacement les données en fonction de n’importe quelle condition de disponibilité d’entrée dans MySQL.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub