Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Dear experts,
I have two tables which both contains column "Id" and column "purchase code". Values in both can be duplicates.
Table 1:
- column "Id": entire Id values
- column "purchase code":
Table 2:
- column "Id": is a sub data set from column Id in table 1
- column "purchase code": contains some of the purchase codes from table 1 but not all. It also contains other purchase codes which don't appear in table 1.
I'd like to create a column "Available in table 2" in table 1, that shows, for example;
Id Purchase code Available in table 2
1 2weer21566 Yes
1 uijbfdd1468 No
2 12ywoofne9 No
Thank you very much in advance for your insights.
Regards,
Cindy
Solved! Go to Solution.
Hi Cindy,
Basically you want to list all the records in Table1 and see if there are any matching records in Table2 where the match is on ID and Purchase code.
If that's right here's the solution:
1. Merge (Left Join) both tables on ID and Purchase code
2. Add a custom column with the following formula:
= if Table.IsEmpty([NewColumn]) then "No" else "Yes"
3. Remove the NewColumn column.
Hopefully this works for you.
Regards,
radpir
0. Import both tables separately into Power BI
1. Add to both tables (with Power Query) a new column "MyKey" and formula "each Text.From([Id]) & "%" & [purchase code]" (feel free to use a different character than "%" depending on the fact which characters would be allowed in purchase code - you must use a character which is not allowed in purchase code).
2. Add to table 2 a column with name "AvailableInTable2" and constant "yes".
3. Change relationship between both tables to join by column "MyKey".
4. Add a new calculated column to table 1 with name "Available in table 2" with formula "IF(RELATED('Table 2'[AvailableInTable2])="yes", "yes", "no")"
I made up an example, which you can find here:
https://1drv.ms/f/s!AnCGtBscBWuhbUwX0l_TEvMPVU4
0. Import both tables separately into Power BI
1. Add to both tables (with Power Query) a new column "MyKey" and formula "each Text.From([Id]) & "%" & [purchase code]" (feel free to use a different character than "%" depending on the fact which characters would be allowed in purchase code - you must use a character which is not allowed in purchase code).
2. Add to table 2 a column with name "AvailableInTable2" and constant "yes".
3. Change relationship between both tables to join by column "MyKey".
4. Add a new calculated column to table 1 with name "Available in table 2" with formula "IF(RELATED('Table 2'[AvailableInTable2])="yes", "yes", "no")"
I made up an example, which you can find here:
https://1drv.ms/f/s!AnCGtBscBWuhbUwX0l_TEvMPVU4
Hi Cindy,
Basically you want to list all the records in Table1 and see if there are any matching records in Table2 where the match is on ID and Purchase code.
If that's right here's the solution:
1. Merge (Left Join) both tables on ID and Purchase code
2. Add a custom column with the following formula:
= if Table.IsEmpty([NewColumn]) then "No" else "Yes"
3. Remove the NewColumn column.
Hopefully this works for you.
Regards,
radpir
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.
User | Count |
---|---|
81 | |
76 | |
61 | |
37 | |
33 |
User | Count |
---|---|
101 | |
56 | |
51 | |
45 | |
40 |