Maison >base de données >tutoriel mysql >Comment créer une vue SQL joignant trois tables (StudentSignUp, Incoming_Applications_Current et Halls) ?
Dans le domaine de la gestion de bases de données, il est souvent nécessaire de fusionner les données de plusieurs tables. Un scénario courant consiste à rejoindre trois tables ou plus pour obtenir des informations complètes. Dans cet exemple, l'objectif est de créer une vue qui combine de manière transparente les informations de trois tables : StudentSignUp, Incoming_Applications_Current et Halls.
La requête initiale fournie se concentre sur la jonction des tables StudentSignUp et Incoming_Applications_Current, récupérant avec succès les informations sur les étudiants ainsi que leurs préférences de dortoir. Cependant, les préférences en matière de résidence sont représentées par des numéros d'identification plutôt que par des noms correspondants. Pour compléter la vue, une troisième table, Halls, doit être fusionnée.
Une requête modifiée peut être utilisée pour obtenir le résultat souhaité :
<code class="language-sql">SELECT s.StudentID, s.FName, s.LName, s.Gender, s.BirthDate, s.Email, r.HallPref1, h1.HallName AS HallPref1Name, r.HallPref2, h2.HallName AS HallPref2Name, r.HallPref3, h3.HallName AS HallPref3Name FROM dbo.StudentSignUp AS s INNER JOIN RoomSignUp.dbo.Incoming_Applications_Current AS r ON s.StudentID = r.StudentID INNER JOIN HallData.dbo.Halls AS h1 ON r.HallPref1 = h1.HallID INNER JOIN HallData.dbo.Halls AS h2 ON r.HallPref2 = h2.HallID INNER JOIN HallData.dbo.Halls AS h3 ON r.HallPref3 = h3.HallID;</code>
Cette requête modifiée introduit trois JOIN supplémentaires entre la table Incoming_Applications_Current et la table Halls. Chaque JOIN est exécuté en utilisant l'ID HallPref comme condition de correspondance. Par conséquent, la requête récupère toutes les informations nécessaires à partir de trois tables, y compris la préférence de nom de dortoir de l'étudiant, et pas seulement l'ID du dortoir.
En implémentant cette requête complète, vous pouvez créer efficacement une vue qui présente une image complète des informations sur les étudiants, y compris leurs préférences de dortoir représentées par des noms lisibles par l'homme.
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!