What's the difference between INNER JOIN
, LEFT JOIN
, RIGHT JOIN
and FULL JOIN
in MySQL?
What is the difference between INNER JOIN and FULL JOIN. Inner join returns only the matching rows between both the tables, non-matching rows are eliminated. Full Join or Full Outer Join returns all rows from both the tables (left & right tables), including non-matching rows from both the tables.
An inner join using either of the equivalent queries gives the intersection of the two tables, i.e. the two rows they have in common. A left outer join will give all rows in A, plus any common rows in B. A right outer join will give all rows in B, plus any common rows in A.
If you dont include the items of the left joined table, in the select statement, the left join will be faster than the same query with inner join. If you do include the left joined table in the select statement, the inner join with the same query was equal or faster than the left join.
Reading this original article on The Code Project will help you a lot: Visual Representation of SQL Joins.
Also check this post: SQL SERVER – Better Performance – LEFT JOIN or NOT IN?.
Find original one at: Difference between JOIN and OUTER JOIN in MySQL.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With