Relationships Deep Dive

You understand active vs inactive relationships and cross-filter directions.

Why this lesson matters

You've created relationships in Model view. It seemed to work. Until your report suddenly shows odd totals. Or filters that do nothing. Or a visual that just stays empty.

Relationships are the nervous system of your data model. If they're wrong, nothing is right. We'll go deeper into how relationships work, when to choose which type, and how to track down problems.

The basics: the one-to-many (1:*) relationship

This is the most common relationship in Power BI and the foundation of the star schema:

  • Dimension table (1 side): Klanten, Producten, Datum
  • Fact table (* side): Verkoopregels, Boekingen, Transacties

The dimension table filters the fact table. Never the other way round.

The 1 and * symbols on the relationship line in Model view show which side is unique and which side contains duplicates. Source: Microsoft Learn
The 1 and * symbols on the relationship line in Model view show which side is unique and which side contains duplicates. Source: Microsoft Learn
dax
-- This measure works correctly thanks to the relationship Klanten → Verkoopregels:
OmzetPerKlant = SUM( Verkoopregels[NettoOmzet] )
-- If you filter on Klanten[Regio] = "Noord", SUM only counts the sales rows
-- of customers in region Noord.
?Knowledge check

You have a dimension table Producten (500 rows) and a fact table Verkoopregels (100,000 rows). Which table is on the "1" side of the relationship?

Cross-filter direction

The arrow on the relationship line shows the filter direction. By default the "1" side filters the "*" side.

The arrow on the relationship line shows the cross-filter direction: one arrowhead is single, a double arrowhead is bidirectional. Source: Microsoft Learn
The arrow on the relationship line shows the cross-filter direction: one arrowhead is single, a double arrowhead is bidirectional. Source: Microsoft Learn
DirectionMeaningWhen to use
Single (→)Dimension filters factDefault, almost always correct
Both (↔)Both sides filter each otherOnly for many-to-many or special cases

When single (default)

In 95% of cases you want the default single direction. Klanten filters Verkoopregels. Datum filters Verkoopregels. Producten filters Verkoopregels.

Keep reading

Leave your name and email address and you can read the rest

You get the whole lesson right away, and every other lesson stays open after that. No password, no confirmation email.

Your address stays with us. No selling to third parties, and you unsubscribe in one click.