Maison > base de données > tutoriel mysql > le corps du texte

Comment vérifier l'intersection de deux tables dans MySQL

coldplay.xixi
Libérer: 2020-10-19 15:59:17
original
8298 Les gens l'ont consulté

Comment interroger l'intersection de deux tables dans mysql : 1. Utilisez le mot-clé UNION ALL pour fusionner les colonnes de données des deux données pour interroger l'intersection ; 2. Utilisez la requête avec le mot-clé IN 3. Utilisez la sous-requête de mot-clé EXISTS.

Comment vérifier l'intersection de deux tables dans MySQL

Méthode de requête Mysql pour l'intersection de deux tables :

Deux tables (colonnes) qui nécessitent une intersection. la structure doit être cohérente, le nombre correspondant de champs et les types de champs doivent être les mêmes ; utilisez le mot-clé UNION ALL pour fusionner les colonnes de données des deux données ; GROUP BY toutes les colonnes ci-dessus qui doivent finalement être comparées ; n'importe quelle colonne, plus de colonne)> 1, alors c'est l'intersection.

SELECT a.* FROM(    SELECT * from teacher    UNION ALL    SELECT * from student)a GROUP BY a.id,a.name,a.sex HAVING COUNT(a.sex)>1
Copier après la connexion

Comment vérifier lintersection de deux tables dans MySQL

2. Jointure interne ou jointure équivalente. jion (jion intérieur). Lors de la comparaison de deux colonnes de données, la condition doit impliquer la colonne qui doit être comparée. Il n'y a pas de comparaison de la colonne de sexe ici, il y a donc une ligne de données de plus qu'à l'étape 2.

SELECT * FROM student AS a JOIN teacher AS b ON a.name =b.name AND a.ID=b.ID或者SELECT * FROM student AS a inner  JOIN teacher AS b ON a.name =b.name AND a.ID=b.ID
Copier après la connexion

Comment vérifier lintersection de deux tables dans MySQL

3. Requête avec le mot-clé IN. Il doit y avoir autant d'IN que le nombre de colonnes de données à comparer est le même. À ce stade, vous devez contrôler les colonnes. Il n'est pas recommandé d'utiliser trop de colonnes.

SELECT * FROM student AS a where a.name in (select name from teacher )AND a.ID in (select ID from teacher);
Copier après la connexion

Comment vérifier lintersection de deux tables dans MySQL

4. Sous-requête avec le mot-clé EXISTS. Pour parler franchement, cette affirmation est obtenue en jugeant si deux conditions égales sont remplies chez l'enseignant.

SELECT * FROM student AS a where EXISTS (select *from teacher b where a.name =b.name AND a.ID=b.ID)
Copier après la connexion

Comment vérifier lintersection de deux tables dans MySQL

Plus de recommandations d'apprentissage gratuites connexes : tutoriel mysql(Vidéo)

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!