• Skip to main content
  • Skip to footer

Curbal

Learn how to grow your business with your data and Power BI

  • Data Stories
    • Power BI Stories
    • 1 dataset, 100 matplotlib visualizations
  • Learning Portal
    • Download Center
    • 25 Days Challenge
    • DAX Glossary
    • Power BI
    • Power BI by Topic
    • Python
    • 1 dataset, 100 matplotlib visualizations
  • Courses
    • Power BI Mini Master Class 1: Using a REST API as a data source
    • Power BI Master Class 1: COVID Tracker
    • Introduction to Power BI – FREE Online course
    • M Language + Power Query Course Bundle
    • Power Query Online Training [updated 2022]
    • M Language Online Course: The unofficial and Practical Reference Guide [updated 2025]
    • My Courses
  • Shop
    • Courses
    • Master Classes
    • Template Apps
    • JSON Themes
  • Cart
  • Register/ Log In
    • Become a Member
    • Log In
    • My account
    • My Courses
  • Search
  • Contact
You are here: Home / CM Tooltip Glossary Pro+ / NATURALINNERJOIN

NATURALINNERJOIN

posted on December 8, 2017

« Back to Glossary Index

Syntax

NATURALINNERJOIN(<leftJoinTable>, <rightJoinTable>)

PART 1: Tutorial with example

In today’s video I will show you how to do an inner join and outer join of tables using DAX.

04:35 Innerjoin
07:59 Outer join

DAX Fridays! #62: NATURALINNERJOIN and NATURALLEFTOUTERJOIN

PART 2: Tutorial with example

Have you got the this error ‘NATURALINNERJOIN’ doesn’t support joins by using columns with different data types or lineage when using the function? In this quick video I will show you how to solve it.

DAX Fridays!

Want to learn more about other types of join possible in Power BI?

In the video below, I go through all the different types of joins and how to do them in Power Query:

Explain the different types of join/merge available in Power BI/ Excel

Download the excel demo file

Joins using DAX:

join tables with dax

And the explanation with videos:

The generate function is used to join tables. With generate, you can do an inner join and outer join of tables using DAX:

GENERATE, GENERATEALL:

DAX Fridays! #64: GENERATE, GENERATEALL

More tutorials on Joining tables: CROSSJOIN

DAX Fridays! #61: CROSSJOIN

In this video I will show you how to do an anti join of tables using DAX:

EXCEPT:

DAX Fridays! #65: EXCEPT

Download example file:

Link to sample pbix here

Remarks

There is no sort order guarantee for the results.
Columns being joined on must have the same data type in both tables.
Only columns from the same source table (have the same lineage) are joined on. For example, Products[ProductID], WebSales[ProductdID], StoreSales[ProductdID] with many-to-one relationships between WebSales and StoreSales and the Products table based on the ProductID column, WebSales and StoreSales tables are joined on [ProductID]
Strict comparison semantics are used during join. There is no type coercion; for example, 1 does not equal 1.0.

Was this helpful?
Related Articles:
  • Joining tables in Power BI with Power Query and DAX
See Also:
  • CROSSJOIN
  • EXCEPT
  • GENERATE
  • GENERATEALL
« Back to Index

Reader Interactions

Comments

  1. Heron Carlos

    December 10, 2017 at 3:05 pm

    Hello Ruth

    I don´t get download the file, unfortunately I received connection error, the message ” ERR_CONNECTION_RESET ” .
    Is there another way to download

    thanks a lot

    Heron

    Reply
    • Ruth Pozuelo Martinez

      December 18, 2017 at 6:42 pm

      Hi,
      Can you please try again? It works for me!
      https://192.168.1.57:5001/sharing/k9nLfdLZO

      /Ruth

      Reply
  2. Christopher Bird

    December 9, 2017 at 6:27 pm

    Great explanation for a much misunderstood subject.

    Reply
    • Ruth Pozuelo Martinez

      December 18, 2017 at 6:40 pm

      Thanks Christopher!! 🙂
      /Ruth

      Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Footer CTA

Join our community of +50,000 professionals

Become a Member

Subscribe to YouTube

About me:

Curbal AB
Badhusgatan 7B
722 15 – Västerås
Sweden

OrgNo: 5569680852 | VAT: SE556968085201

 

Location:

© Copyright 2014-2025 · Curbal AB · All Rights Reserved · Privacy Policy · Terms of Service · Refund Policy · Log In