Maison >base de données >tutoriel mysql >Comment accéder à plusieurs colonnes dans des requêtes de jointure avec différentes conditions de jointure ?

Comment accéder à plusieurs colonnes dans des requêtes de jointure avec différentes conditions de jointure ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-26 11:28:29722parcourir

How to Access Multiple Columns in Join Queries with Different Join Conditions?

Accès à plusieurs colonnes dans les requêtes de jointure

Lors de la jointure de tables par différentes colonnes, le référencement de plusieurs colonnes peut être un besoin courant. Considérons un scénario avec une table d'utilisateurs et de réclamations, comme décrit dans le contexte donné. Pour récupérer les noms d'utilisateur pour les actions d'ouverture et de fermeture de chaque réclamation, nous devons étendre la requête de jointure pour englober les colonnes nécessaires.

La requête fournie utilisait une jointure gauche pour lier la réclamation et les tables utilisateur en fonction du colonne open_by. Pour inclure la colonne close_by, nous utilisons une autre jointure gauche utilisant la table utilisateur, en alias les références de table comme "A" et "B" pour distinguer les deux conditions de jointure.

La requête résultante devient ainsi :

<code class="sql">SELECT 
     complaint.complaint_text, 
     A.username, 
     B.username
FROM 
     complaint 
     LEFT JOIN user A ON A.user_id=complaint.opened_by 
     LEFT JOIN user B ON B.user_id=complaint.closed_by</code>

Grâce à cette requête, les deux noms d'utilisateur peuvent être extraits et affichés à côté du texte de la plainte pour chaque enregistrement.

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!

Déclaration:
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