Maison >base de données >tutoriel mysql >Comment identifier à la fois le plaignant et le résolveur de plainte en une seule requête ?
Joindre la même table deux fois sur des colonnes différentes pour l'identification de l'utilisateur
Considérez un scénario de base de données impliquant une table utilisateur et une table de réclamation. Le tableau des réclamations comprend des informations telles que l'utilisateur qui a ouvert la réclamation, le texte de la réclamation et l'utilisateur qui l'a fermée. Tous les utilisateurs impliqués dans les plaintes (plaignants et résolveurs de plaintes) sont stockés dans la table des utilisateurs.
Pour identifier les noms d'utilisateur du plaignant et du résolveur de plaintes, nous devons joindre la table des plaintes à la table des utilisateurs deux fois, une fois pour chacun. colonne utilisateur. La requête suivante accomplit cela :
<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>
Dans cette requête :
L'exécution de cette requête récupérera le texte de la réclamation ainsi que les noms d'utilisateur de l'ouvreur et du résolveur de la réclamation, fournissant ainsi une vue complète de la réclamation. données relatives à l'identification de l'utilisateur.
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!