Skip to main content

What are the four types of relationships that can be created between tables in a Power BI model?

Table of Contents

or

What are the different types of joins that Power BI supports?

How can I create different types of relationships between tables in a Power BI model?

What are some examples of how different types of relationships can be used in Power BI models?

The model may contain different types of relationships that Power BI explicitly supports by cardinality and cross-filter direction. Cardinality (whether there is one or many unique values related to a single value in the other table’s column(s)) and cross-filter direction describe how filters propagate through the tables.

The relationships possible between tables in Power BI are of four types as follows:

One-to-one: This relationship exists when each row in one table is related to only one row in another table. For example, the table of customers probably has a one-to-one relationship with the table of shipping addresses.

One-to-many: In this relationship, a single row in one table can relate to multiple rows in the other table. An example would be an Item table relating to a Sales table because one item can be sold in many sales.

Many-to-one: This is the opposite of a one-to-many relationship. It defines that several rows in one table can relate to just one row in another table. For example, a many-to-one relationship would exist between a Sales table and a Customer table: multiple sales records belong to one customer.

Many-to-many: It happens when a single row in one table corresponds to various rows in another table. For example, there can exist many-to-many relationships between the customer table and the Item table because a customer can buy multiple items and an item can be bought by several customers.

Moreover, in Power BI, the relationships can be defined as both the parent direction and the child direction. With a bidirectional relationship, when you apply a filter in a table, its corresponding table filters its values and vice versa. For instance, customer table should filter out those customers who ever ordered, or sales table should filter to show orders placed only by a given customer.

You should base the decision on what type of relationship to create between two tables on the structure of your data and the kind of analyses likely to be run. After all the right relationships are set up, your Power BI reports and dashboards will be much more useful and easy to work with.

Add comment