Skip to main content

What is the difference between Related and Lookupvalue in Power BI?

You must be aware of the purpose and significance of Vlookup in Excel. But when it comes to Microsoft Power BI there is no Vlookup in it. Power BI provides you Related and Lookupvalue which is quite similar to Vlookup in Excel. If you aren't familiar with the Vlookup kindly refer to our blog.

Let's get started with the purpose of both functions. You will be shocked to know that both of them will give you the same result. Because it follows the same principle of Vlookup i.e. searching for a particular value in a column and returns a value from a different column (different table). In this blog, we will showcase how and when to use related and lookup values. We will be using Sample Superstore data.

The question that comes to my mind is when to use the related functions? So there are certain criteria to be met before creating a column with related. One of the conditions is that both the tables (one where we are creating a column and the other will be from where the value will come from) should have an active relationship between them. When we talk about relationships in Power BI you have to discuss the cardinality of every relationship. In this case, you will require many to one or one to one relationships to make this function work. We are considering the orders table and return table. The idea is to get the return status in the order table.




As you can see we created many to one relationship between both tables and it is an active relationship. We met the basic criteria and now we will create a calculated column with the help of related.



Currently, we are filtering the blank values in the return status column which is something I do not like about using related because it does not provide any options for giving an alternate result. This is my opinion but if you consider the performance of this function it is much better than the lookup value as it only uses one parameter. It's always a better option if you can establish relationships between different tables.

But what if we do not have any relationship? No problem!! we have Lookupvalue for that case. As I already mentioned it will give you the same result as the related. The syntax for the lookup value may seem to be difficult to grasp but it is very similar to vlookup. Let me walk through the syntax before its application.

  • Result Column Name- Column that contains required value so in our example it will be the returned from returns table
  • Search Column Name- Column that contains search value. It will be the Order ID available in the returns table
  • Search Value- Value you are looking for in the search column.
  • Alternate result- Value you can provide in case you have blanks in the data 



We will provide "Not Available" to all the blank values in the return status. The only addition is the text to the alternate result. It is optional but I would prefer to provide it.


In many cases, you will get the blank because there are no matches available for that particular field. When it comes to the performance the former is quite faster than the lookup value but if you see the query behind both of them lookup value has a more optimized query running behind it. I would choose lookup value anyway as there are no specific criteria to be met and also I can avoid blank values by providing an alternate result.




Thanks for Reading  Let's connect on  LinkedIn. For more such blogs do follow us.




Comments

Popular posts from this blog

Ultimate Beginners Guide to DAX Studio

There are zillions of external tools available with Power BI but DAX Studio is one of the most commonly used tools to work with DAX queries. It is a perfect tool to optimize the DAX and the data model. In this blog let's shed some light on the basic functionalities that can take your report to the next level. ARE YOU READY?  To start you will need the latest version of the DAX Studio. You can download it from their website . Don't worry you don't have to pay for the license. Fortunately, DAX Studio is a free tool As a BI Developer, I am using DAX Studio regularly. Based on my experience I use it for several purposes but in this blog, I will highlight the most common ones. Extracting a dump of all the measures used in your PBIX. Why do we need to do this? It can be used for documentation purposes also sometimes we try to reuse the DAX and such a dump comes in handy in this scenario. How to achieve it? Open the DAX Studio it is located under the external tools once you open t

Append v/s Merge in Power BI

Let's discuss another problem of the week. As a Power BI user, there are times when you want to combine queries. What are the ways to do so? In most cases, you can attain it by using either append or merge and both serve different purposes. Let's understand what do these terms mean in Power BI and how they are functionally different from each other.  It is quite common to get data from various sources and you need to combine those data depending on a particular column which is common in both tables so that you can add extra information or column to your big table. In such cases, we use merge queries. How to perform merge queries? For instance, I am considering Sample Superstore data and we will merge the returns table to the order table. You will find both merge and append in the home tab in extreme right in the power query editor. ProTip - You will find two options when you click on the drop-down in merge which are merge queries and merge queries as new. When you use merge que

Use Relationship in DAX

Data modeling is an essential part of creating perfect visuals. While creating complex data models there can be a case where you can find an inactive relationship represented by dotted lines and it occurs because you already have an active relationship between the two tables. But as a developer, you need to use both the relationship. How can it be done? You can use "Use Relationship" in such cases. Use relationship can be added to your DAX and act as a modifier or enhancer for calculation. It activates the inactive relation. But make sure you have an inactive relationship in place before using the use relationship function. Let's see how it works on Sample Superstore data. In my fact table I have two dates- Order date and Ship date. I am making the two relations between my date table and fact table. The relation between the sample superstore (date) to date table (date) is active while the relation between the sample superstore (ship date) to date table (date) is inactive