A standard JOIN or inner-join in SQL will join tables where the rows are exactly matching on the column that you are joining on. It will automatically not include non-matching rows, so that you are only presented with rows that are consistent. The benefit of this is that you are only presented with consistent and accurate information. The disadvantage is that you are missing information from some items.
However, a LEFT JOIN will join tables on a column where rows may not be matching (inconsistency between tables can be caused by one table being updated, but corresponding information in another table not being updated). In this scenario, you are given all information, but some attributes may be listed as NULL.
Image above from codecademy.com https://s3.amazonaws.com/codecademy-content/courses/learn-sql/multiple-tables/left-join.gif |
A CROSS JOIN creates a Cartesian Product. This means that it will allow us to combine all rows of one table with all rows of another table. If there are three rows in table A, and three rows in table B, all three rows of table A will be joined with all three rows of table B. The results of this join will have 9 rows.
No comments:
Post a Comment