Dans MYSQL, les données des tables associées peuvent être fusionnées pour un filtrage conditionnel via des liens clés internes et externes :
Créez d'abord deux nouvelles tables avec les données suivantes :
Données de la table des étudiants :
Données de la table de score :
Vous pouvez voir que le stu_id dans la table des étudiants est 16048008 L'enregistrement correspondant à la table de scores ne contient aucune donnée ;
1 Lors de l'exécution d'une connexion interne, le système ignorera automatiquement les données qui ne correspondent pas dans les deux tables :
-- 显示内连接所有数据:SELECT * FROM students st INNER JOIN score sc ON st.sid=sc.stu_id;
. Il y a trop de données, donc seules des captures d'écran sont prises. À la fin :
Vous pouvez voir que les données ne sont affichées que jusqu'à 16048007, et 16048008 ne sont pas affichées, donc la connexion interne n'affiche que toutes données associées.
2. Lien gauche, affichez toutes les données dans le tableau à gauche du mot-clé gauche S'il y a moins de données dans le tableau de droite, les valeurs NULL seront ajoutées. il y a trop de données, elles ne seront pas affichées.
-- 左外链接 leftSELECT * FROM students st LEFT JOIN score sc ON st.sid=sc.stu_id;
Vous pouvez voir que 16048008 est à droite. Il n'y a aucune donnée dans le tableau des scores, et le système le remplit. avec NUll,
SELECT * FROM score sc LEFT JOIN students st ON st.sid=sc.stu_id;
L'image ci-dessus est le résultat du changement des positions du tableau des étudiants et du tableau des scores. On peut voir que l'enregistrement original 16048008 dans le tableau de droite est dû au fait qu'il se trouve à gauche. Il n'y a pas de données correspondant à l'horloge, elle a donc été supprimée. On voit que le lien de gauche utilise les données du tableau de gauche comme référence et affiche toutes les données du tableau de gauche. Le tableau de droite affiche uniquement les données correspondant à. le tableau de gauche, sans ajouter NULl Supprimer s'il y en a trop
De même, le lien de droite est basé sur le côté droit, remplissez NULL s'il y en a moins à gauche, et supprimez s'il y en a trop ; beaucoup, donc je n'en dirai pas plus ici ;
De ce qui précède, nous pouvons conclure :
1. Jointure interne, affiche toutes les données liées aux deux tables
2. Le lien de gauche, en utilisant le tableau de gauche comme référence, affiche toutes les données ;
3. Le lien de droite, affiche les données avec le tableau de droite comme référence
Simple, ne le faites pas ; soyez impatient, avancez régulièrement et pleinement chaque jour !
Apprentissage recommandé : tutoriel 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!