Maison > Article > base de données > Comment effectuer une requête conjointe dans Navicat
Produit cartésien
Pour les requêtes multi-tables, les noms de tables doivent être séparés par des virgules. De cette façon, toutes les données de plusieurs tableaux peuvent être trouvées. La méthode du produit cartésien (combinaison complète)
Beaucoup de données découvertes de cette manière sont invalides. données. Vous pouvez ajouter des conditions aux requêtes multi-tables pour trouver les informations souhaitées.
Jointure interne
peut filtrer les informations efficaces via les attributs associés entre les tables lors de la conception de la base de données.
Jointure interne explicite
SELECT * FROM employee AS e1,enterprise AS e2 WHERE e1.enterpriseId-e2.id;
Jointure interne implicite
SELECT * FROM employee e1 INNER JOIN enterprise e2 ON e1.enterpriseId=e2.id;
Il n'y a pas de différence essentielle entre la jointure interne implicite et la jointure interne explicite.
Recommandations associées : "Tutoriel graphique Navicat pour mysql"
Jointure externe
Basé sur une table, découvrez tout les données de cette table, puis associez-la à une autre table. Si elle est associée, ses informations seront affichées. S'il n'y a pas d'association, elles ne seront pas affichées comme nulles.
Jointure externe gauche
SELECT * FROM employee e1 LEFT JOIN enterprise e2 ON e1.enterpriseId=e2.id;
Jointure externe droite
SELECT * FROM employee e1 RIGHT JOIN enterprise e2 ON e1.enterpriseId=e2.id;
alias de la table
Il y a deux raisons d'utiliser des alias de table :
1. Pour plus de commodité et de simplicité.
2. Si vous effectuez une requête multi-tables à partir d'une table en double, vous devez utiliser un alias.
Il existe deux manières d'utiliser les alias :
1 Ajoutez un espace directement après le nom de la table, puis donnez-lui un nouveau nom.
SELECT * FROM employee e1,enterprise e2 WHERE e1.enterpriseId-e2.id;
2.as n'est pas différent de le nommer directement, mais il semble que les instructions SQL plus standardisées seront plus faciles à visualiser.
SELECT * FROM employee AS e1,enterprise AS e2 WHERE e1.enterpriseId-e2.id;
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!