This is my very first Stackoverflow post, so I apologize if I am not formatting my question correctly. I’m pounding my head against the wall with what I’m sure is a simple problem. I have a table with a bunch of event information, about 10 columns as so:
Table: event_info
date location_id lead_user_id colead_user_id attendees start end <and a few more...> ------------------------------------------------------------------------------------------------ 2020-10-10 1 3 1 26 2100 2200 . 2020-10-11 3 2 4 18 0600 0700 2020-10-12 2 5 6 6 0800 0900
And another table with user information:
Table: users
user_id user_name display_name email phone city ---------------------------------------------------------------------- 1 Joe S goofball ... 2 John T schmoofball ... 3 Jack U aloofball ... 4 Jim V poofball ... 5 Joy W tootball ... 6 George A boring ...
I want to create a view that has only a subset of the information, not full table joins. The event table lead_user_id and colead_user_id columns both refer to the user_id column in the users table.
I want to create a view like this:
date Location Lead Name CoLead Name attendees --------------------------------------------------------------------- 2020-10-10 1 Jack U Joe S 26 2020-10-11 3 John T Jim V 18 2020-10-12 2 Joy W George A 6
I have tried the following and several iterations like it to no avail…
SELECT 
    E.date, E.location, 
    U1.display_name AS Lead Name, 
    U2.display_name AS CoLead Name. 
    E.attendees
FROM
    users U1, event_info E
INNER JOIN 
    event_info E ON U1.user_id = E.lead_user_id
INNER JOIN 
    users U2 ON U2.user_id = E.colead_user_id
And I get the dreaded
You have an error in your SQL Syntax
message. I’m not surprised, as I’ve really only ever used joins on single columns or nested select statements… this two columns pointing to one is throwing me for a loop. Help!
Advertisement
Answer
correct query for this matter
SELECT 
    E.date, E.location, 
    U1.display_name AS Lead Name, 
    (select display_name from users  where user_id=E.colead_user_id) AS CoLead Name, 
    E.attendees
FROM
    event_info E
INNER JOIN 
     users U1 ON U1.user_id = E.lead_user_id