Skip to main content
All CollectionsOrganize
What are the different join types?
What are the different join types?

This article will explain the difference between the 4 join types seen in data blend creation modal

Laurynas Arminas avatar
Written by Laurynas Arminas
Updated over 10 months ago

Data blending in data visualization involves integrating information from multiple data sources or datasets to create a unified view or visualization. This process combines datasets with related but distinct dimensions or metrics, allowing analysts to merge and compare information from various sources seamlessly. Through a common field or key, data blending matches and consolidates relevant data points, enabling the creation of comprehensive visualizations that uncover correlations, patterns, or trends across disparate datasets, providing a holistic understanding for informed decision-making and analysis.

Whatagraph currently offers 4 different join blend types - but if you are in doubt and you are reading this article without any prior experience, I would like to suggest Full-outer join to start with. This join type will be responsible for the vast majority of different use cases.

Left outer join - returns all matching values from the right table, all non-matching values from the right table are dropped.

Makes most sense when you have two (or more) sources that share the same dimension and you wish to enrich the data by adding more information. To be more precise let's imagine adding Facebook Ads (left table) and Google Ads (right table). We want to display the COST metric for both sources into one table, the shared dimension between the two can be Date. In this case, if Google Ads (right table) contains any values that are not found on Facebook Ads (left table) then they will not be included in the final blend.

Inner join - returns only the matching values from both tables, all non-matching values are dropped.

Makes most sense when you have two (or more) sources that share the same dimension and you wish to only return the values that match in both sources. To be more precise let's imagine that we want to only display data from Google Analytics for users that have logged in from Mobile (left table) and Desktop (right table) devices, the shared dimension between the two sources can be User ID. This means that users who only used one device, and not both will not be included in the blend.

Full outer join - merges all values from both tables into one, no values are dropped.

Makes most sense when you have two (or more) sources that share the same dimension and you wish to enrich the data by adding more information. To be more precise let's imagine we have Facebook Ads (left table) and Google Ads (right table). We want to display conversion values for both of the sources in the same table with the joined condition of Date.

In this case, all possible values from Google Ads (right table) and Facebook Ads (left table) will be included in the final blend. Any missing values will be replaced with 'null'.

Cross join - returns all possible combinations of values.

This is the only blend type where no join condition (shared dimension like Date) is needed. It makes most sense when we want to see every possible combination of values from two data sources. In Whatagraph's instance it makes sense to view this join as a way to join two single values together. Then there will only be one possible combination.

To be more precise let's say we want to get a sales ratio metric which would consist of Total Purchases from Google Analytics (left table) divided by Total spend from Facebook Ads (Right table). Then we will get one average metric which should show how much was spent on Facebook proportionally for each sale made.

Did this answer your question?