Possible Duplicate:
SQL left join vs multiple tables on FROM line?
SELECT messages.message_title,
messages.message_content,
messages.message_timestamp,
user_message_relations.sender_id
FROM messages
LEFT JOIN global_messages ON messages.message_id = global_messages.message_id
LEFT JOIN user_messages ON messages.message_id = user_messages.message_id, user_message_relations
WHERE user_message_relations.receiver_id = 3
OR
SELECT messages.message_title,
messages.message_content,
messages.message_timestamp,
user_message_relations.sender_id
FROM messages,
global_messages,
user_messages,
user_message_relations
WHERE user_message_relations.receiver_id = 3
My main question is, what's the point of using LEFT OUTER JOIN
(or any kind of JOIN
) if I can just call the table directly like the second query? Is there a benefit?
I see that the second method is not considered "best practice" ... with that in mind, would this following query be correct if I wanted to populate the inbox of a user with the id of 3?
SELECT messages.message_id,
messages.message_title,
messages.message_content,
messages.message_timestamp,
user_messages.message_id,
user_message_relations.sender_id
FROM user_message_relations
INNER JOIN user_messages ON user_message_relations.user_message_id = user_messages.user_message_id
INNER JOIN messages ON user_messages.message_id = messages.message_id
WHERE user_message_relations.receiver_id = 3