381 votes

Requête SQL Inner-join avec 3 tables?

Je tente de joindre 3 tables dans une vue; voici la situation:

J'ai une table qui contient des informations sur les étudiants qui postulent pour vivre sur ce campus universitaire. J'ai une autre table qui répertorie les préférences de résidence (3 d'entre elles) pour chaque étudiant. Mais chacune de ces préférences n'est qu'un numéro d'identification, et le numéro d'identification correspond à un nom de résidence dans une troisième table (je n'ai pas conçu cette base de données...).

En gros, j'ai fait un INNER JOIN sur la table avec leurs préférences et leurs informations, le résultat est quelque chose comme...

 John Doe | 923423 | Étudiant entrant | 005

005 serait l'ID de la résidence. Maintenant, je veux faire correspondre cet ID de résidence à une troisième table, où cette table contient un ID de résidence et un nom de résidence.

En gros, je veux que mon résultat soit comme...

 John Doe | 923423 | Étudiant entrant | Résidence Foley <---(AU LIEU DE 005)

Voici ce que j'ai actuellement:

SELECT
  s.StudentID, s.FName, 
  s.LName, s.Gender, s.BirthDate, s.Email, 
  r.HallPref1, r.HallPref2, r.HallPref3
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 h 
    ON r.HallPref1 = h.HallID

1voto

Eahiya Points 104
select products.product_id, product_name, price, created_at, image_name, categories.category_id, category_name,brands.brand_id, brand_name 
FROM products INNER JOIN categories USING (category_id) INNER JOIN brands USING(brand_id)

-5voto

Islam Hamza Points 31
sélectionner empid, empname, managename, [Management], cityname  
de employés intérieur joindre Managment  
sur employees.manageid = Managment.ManageId     
intérieur joindre VILLE sur employés.Cityid = VILLE.CityId

id nom  managename  managment  cityname
----------------------------------------
1  islam   hamza       il        le caire

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X