Maison >base de données >tutoriel mysql >Comment puis-je rejoindre la même table deux fois dans une requête MySQL ?
L'opération de jointure de MySQL vous permet de fusionner des lignes de plusieurs tables en fonction d'une clé commune. Dans certains scénarios, il peut être nécessaire de joindre une table avec elle-même deux fois. Cette technique est couramment utilisée pour afficher plusieurs colonnes de la même table dans les résultats de la requête.
Considérons une base de données avec deux tables : domaines et avis. La table des domaines contient les ID de domaine (dom_id) et les noms de domaine (dom_url). La table des avis contient les ID de domaine pour les domaines « de » et « vers » impliqués dans une révision (rev_dom_from, rev_dom_to).
Pour afficher les deux noms de domaine pour chaque révision, il est nécessaire de rejoindre la table des domaines deux fois. .
Pour y parvenir, utilisez un LEFT JOIN pour chaque jointure souhaitée. Dans cet exemple, alias la table des domaines comme toD et fromD pour plus de clarté.
SELECT toD.dom_url AS ToURL, fromD.dom_url AS FromUrl, rvw.* FROM reviews AS rvw LEFT JOIN domain AS toD ON toD.dom_id = rvw.rev_dom_for LEFT JOIN domain AS fromD ON fromD.dom_id = rvw.rev_dom_from;
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!