Dans MySQL, l'instruction in in select est souvent utilisée dans les expressions Where. Sa fonction est d'interroger des données dans une certaine plage. La plage de données interrogées par in n'est pas nécessairement claire et peut contenir des instructions de sous-requête. select * fromwhere...in (plage de données ou instruction de sous-requête)".
L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.
1. Utilisation de base
in dans MySQL est souvent utilisé dans les expressions Where, et sa fonction est d'interroger des données dans une certaine plage.
select * from where field in (value1,value2,value3,…)
Lorsque IN est précédé de l'opérateur NOT, cela signifie le sens opposé à IN, c'est-à-dire ne pas sélectionner dans ces éléments de liste
select * from where field not in (value1,value2,value3,…)
2 Sous-requête IN
Dans la plupart des cas, la valeur de la liste IN. item is Ce n'est pas clair, mais peut être obtenu via une sous-requête :
SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=0)
Dans cet exemple SQL, nous implémentons la méthode de recherche de tous les articles de tous les utilisateurs avec un statut de 0 (éventuellement bannis). Tout d'abord, obtenez tous les utilisateurs avec le statut = 0 via une requête :
SELECT uid FROM user WHERE status=0
Utilisez ensuite les résultats de la requête comme éléments de liste de IN pour obtenir les résultats finaux de la requête. Notez que le résultat renvoyé dans la sous-requête doit être un élément de liste de champs.
Exemple : Interrogez toutes les données avec les ID 2 et 4 dans la table du livre :
Il existe une table de données de livre avec le contenu suivant :
L'instruction de requête et les résultats de la requête sont présentés dans la figure suivante :
Apprentissage recommandé : 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!