I’m trying to join 3 tables in a view; here is the situation:
I have a table that contains information of students who are applying to live on this College Campus. I have another table that lists the Hall Preferences (3 of them) for each Student. But each of these preferences are merely an ID Number, and the ID Number has a corresponding Hall Name in a third table (did not design this database…).
Pretty much, I have INNER JOIN on the table with their preferences, and their information, the result is something like…
John Doe | 923423 | Incoming Student | 005
Where 005 would be the HallID. So Now I want to match that HallID to a third table, where this table contains a HallID and HallName.
So pretty much, I want my result to be like…
John Doe | 923423 | Incoming Student | Foley Hall <---(INSTEAD OF 005)
Here is what I currently have:
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
You can do the following (I guessed on table fields,etc)
Based on your request for multiple halls you could do it this way. You just join on your Hall table multiple times for each room pref id: