The difference is how the tables are joined if there are no shared records.
JOIN is the same as INNER JOIN, and means to show only records common to both tables. Regardless of whether the entries are regular, fields are defined in the join clause. For example:
FROM t1 JOIN t2 on t1.ID = t2.ID
means show only records in which the same ID value exists in both tables.
LEFT JOIN is the same as LEFT OUTER JOIN, and means that all records from the left table (that is, that precede the SQL statement) are displayed regardless of the existence of matching records in the right table.
RIGHT JOIN is the same as RIGHT OUTER JOIN, and means the opposite of LEFT JOIN, that is, it displays all the records from the second (right) table and only the corresponding records from the first (left) table.
Chandresh
source share