Maison >base de données >tutoriel mysql >Syntaxe d'opération de base couramment utilisée de MySQL (8)~~Résultats de fusion de requêtes de tables multiples et requête de jointure interne [mode ligne de commande]
1. Utilisez union et union all pour fusionner deux résultats de requête : select field name from tablename1 union select field name from tablename2
Notez que cette opération est effectuée. doit s'assurer que les champs des deux tables sont les mêmes et que les types de données des champs sont également les mêmes. De plus, lors de l'utilisation de l'union, les enregistrements en double (identiques) seront supprimés, mais pas l'union all.
Remarque : les requêtes de jointure suivantes impliquent le concept de produit cartésien, c'est-à-dire que s'il y a deux tables, la première a n enregistrements et l'autre table a m enregistrements, alors le nombre d'enregistrements obtenus par le produit cartésien est n*m ; si le nombre de champs dans la première table est a et le nombre de champs dans l'autre table est b, alors le nombre de champs obtenu par le produit de Descartes est a b.
2. Utiliser la jointure naturelle : Le principe est que les deux tables ont les mêmes champs : (Cette opération supprimera les champs en double)
Pour cette requête, ma compréhension est la suivante : conserver les données qui existent dans les champs associés (tels que Department_id ici) dans ces deux tables et supprimer les données qui existent dans une seule table :
Comme le montre le contenu ci-dessus, il y a quatre éléments de données dans company et 7 éléments dans emp. Par conséquent, peu importe celui qui est placé devant, seuls six éléments sortent car le part_id in. company est 4 mais pas dans emp, et le part_id dans emp est 5. , et il n'y en a pas dans company.
3. Jointure interne sur requête de jointure équivalente :
D'après ma compréhension, la différence entre cette opération et la jointure naturelle ci-dessus est qu'elle n'est pas supprimé Les champs répétés sont plus flexibles et ne nécessitent pas de champs avec le même nom de champ :
4.