How to Change Relationship to Join in Tableau

Cody Schneider••8 min read

If you've started using a new version of Tableau, you've probably dragged two data tables onto the canvas and seen a thin orange line, or a "noodle," connect them. This is a Tableau Relationship, the default way of combining data. But what if you need the old, familiar join? This article will walk you through exactly why and how to switch from a flexible relationship to a fixed join in Tableau.

GraphedGraphed

Build AI Agents for Marketing

Build virtual employees that run your go to market. Connect your data sources, deploy autonomous agents, and grow your company.

Watch Graphed demo video

First, What’s the Difference? Relationships vs. Joins

Before changing anything, it’s essential to understand the fundamental difference between these two methods of combining data. They might seem similar, but they behave very differently under the hood.

Tableau Relationships (The "Noodle")

Relationships are Tableau's newer, smarter, and more flexible way to handle multiple tables. Think of them as a contract between two tables. The tables remain separate and independent in your data source. When you build a visualization, Tableau looks at the fields you're using from each table and crafts a custom query on the fly to bring in only the data needed, at the correct level of detail.

  • Flexible: They automatically handle many-to-many relationships and different levels of granularity, which often prevents accidental row duplication.
  • Performant: Because queries are generated based on the specific visualization, they can sometimes be more efficient than working with one giant, pre-joined table.
  • Contextual: The way the data is combined depends entirely on the context of your worksheet.

Relationships are the default because, for most common analytics tasks, they are more intuitive and prevent common errors like blown-out data from a bad join.

Free PDF · the crash course

AI Agents for Marketing Crash Course

Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.

Tableau Joins (The "Venn Diagram")

Joins are a more traditional, rigid way of combining data. When you join tables, you merge them into a new, single, flattened table of data before analysis begins. This new table is what you work with in your Tableau worksheets. Every row has a permanent home, and the structure is fixed from the start.

  • Fixed: You create a single, wide table. This structure doesn't change from sheet to sheet.
  • Permanent: The result of the join is set in stone within the Tableau data source. The original tables are no longer treated as separate entities.
  • Explicit: You must manually define the type of join (Inner, Left, Right, Full Outer), which gives you full, explicit control over how rows match up and which ones are kept or discarded.

Joins require you to have a deeper understanding of your data's structure to avoid data duplication or loss.

So, Why Switch from a Relationship to a Join?

If relationships are so smart, why would you ever go back to using joins? There are several valid scenarios where forcing a static join gives you the control and predictability you need.

  1. You Absolutely Need a Single, Flattened Table: Sometimes, your analysis requires it. This is often the case when writing complex Level of Detail (LOD) expressions or certain table calculations that are much easier to conceptualize and debug on a single, predictable data structure.
  2. Row-level Security That Depends on a Specific Join: A row-level security calculation may depend on the specific results only produced by an inner or left join. A contextual relationship might not guarantee the structure needed for the security calculation to work 100% of the time.
  3. Performance Issues with Highly Complex Models: In some edge cases with dozens of tables, the "on-the-fly" queries generated by relationships can become extremely complex and slow. Defining a smaller number of specific, physical joins can sometimes improve performance by simplifying the query Tableau needs to run.
  4. You Need Full Control Over Data Loss/Inclusion: Maybe you intentionally want to discard all non-matching records with an inner join to analyze only customers who have made a purchase. Or, you need a full outer join to see a complete list of all products and all sales regions, even those with no matches. Joins give you direct, unambiguous control over this.
  5. Migrating Legacy Workbooks: If you're updating an old workbook built on joins, it can sometimes be easier to recreate the original joined data source rather than re-engineering all your worksheets and calculations to work with relationships.

The core theme is control. You switch to a join when you need to be the one dictating the exact structure of the data table, not Tableau.

Step-by-Step Guide: How to Change a Relationship to a Join

Ready to make the switch? The process is straightforward once you know where to look. It involves moving from Tableau’s "logical layer" (where you create relationships) into its "physical layer" (where you create joins).

For our example, let's say we have two tables: Orders and Sales Reps.

GraphedGraphed

Build AI Agents for Marketing

Build virtual employees that run your go to market. Connect your data sources, deploy autonomous agents, and grow your company.

Watch Graphed demo video

Step 1: Open Your Data Source Page

Start in your Tableau workbook on the Data Source page. You should see your initial table (e.g., Orders) already on the canvas.

Step 2: Drag Your Second Table to Create a Relationship (If You Haven't Already)

Drag your second table (e.g., Sales Reps) onto the canvas. Tableau will automatically create a relationship — the thin orange noodle connecting them — based on a field it thinks they share, like Region.

Step 3: Dive Into the Physical Layer

Here's the key step. Double-click on the first table in the logical view (the Orders box). Notice that this opens up a new view. This is the physical layer. Your one logical table can actually be made up of one or more physical tables that have been joined. The flowy canvas is gone, replaced with a more rigid layout where you'll see a Venn diagram icon for joins.

Step 4: Drag in the Second Table to Create a Join

Now, from the list of tables on the left-hand sidebar, drag your second table (Sales Reps) onto the canvas, right next to the Orders table. Instead of a noodle, Tableau will now display the join Venn diagram, defaulting to an inner join.

Free PDF · the crash course

AI Agents for Marketing Crash Course

Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.

Step 5: Configure Your Join

Once the join is created, you can customize it completely:

  1. Select Join Type: Click on the Venn diagram icon. This opens the join configuration dialogue. Here, you can choose your desired join type:
  2. Define the Join Clause: Below the join type, you'll specify the fields that connect the tables (the join key). For example, you might join Orders and Sales Reps on the Region field. You can add multiple join clauses if needed.

That's it! You have now created a fixed join. You can see the resulting flattened table in the data preview grid at the bottom of the screen. Close the physical layer view to return to the main data source page, where you'll see your single, custom logical table ready for analysis.

Best Practices and Common Pitfalls

Switching to joins is powerful, but it comes with responsibility. Keep these points in mind to avoid common issues.

  • Watch for Row Duplication: This is the number one problem with joins. If you join on a field that isn't unique in one of the tables (a one-to-many relationship), your measures can get multiplied. For example, if one sales rep is responsible for 10 orders and you join tables on Rep ID, that sales rep's attributes (like salary) will appear 10 times and get inflated in any sum aggregation.
  • Be Mindful of Nulls: Left, right, and full outer joins will introduce null values into your new table where there isn't a match. Be prepared to handle these nulls in your calculations and filters so they don't skew your analysis.
  • Use Extracts After Joining: Because a join creates a fixed table upfront, it's a great candidate for a Tableau Extract. Creating an extract will pre-compute the join and store the results in an optimized .hyper file, which typically leads to much faster dashboard performance compared to running a complex join query against a live database connection.
  • Default Back to Relationships: When in doubt, start with a relationship. They are designed to prevent the most common data combination errors. Only move to a join when you have a specific, concrete reason for needing that level of manual control.

Final Thoughts

Knowing when to switch from a flexible relationship to a rigid join is a sign of a maturing Tableau user. It’s about understanding the trade-off: relationships offer ease of use and automated handling of complex granularity, while joins give you the ultimate power and explicit control over your data's structure.

While mastering the nuances of joins in BI tools is a valuable skill, it also shows just how much manual effort can go into preparing your data for analysis. At Graphed, we built our platform to remove this friction entirely. Instead of configuring data sources and choosing between join types, you simply connect your marketing and sales accounts, and then create dashboards by describing what you want to see in plain English. We handle the complex data stitching automatically, allowing you to ask questions and get real-time dashboards in seconds, not hours.

Related Articles