Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
I have data from 2 queries in Power Query. We'll call them A and B. Both queries return a number of columns, including a date column. I need to represent both A and B as a stacked bar chart showing how many rows each has per month. The problem is B contains data included in A. I can't use the "remove duplicates" in Power Query because that only concerns itself with rows/columns with the same data across the entire row and only in the same query. Only 1 column in A is duplicated in B (we'll call that column "name"). There are names present in B that should only be present in A.
So far, I have tried using DAX to count all the rows of B:
and count all rows of A:
then subtract to eliminate duplicates:
This works but when I put TrueTotalB in a stacked column chart against the date column as its y axis, I get negative values for most of the date. The reason is TotalB subtracts TotalA from every date, instead of only relative date e.g. a duplicate name in B with date January should only be subtracted from January, not every month.
Maybe there is a different solution besides using DAX? Any help is appreciated.
Edit: I'm thinking I can merge both A and B together and then use a calculated column to find duplicate names, then just delete them manually.
Solved! Go to Solution.
@Anonymous,
I would use an anti join in Power Query. Exclude the duplicate rows in TableB, and then append the remaining rows to TableA.
1. Create a left anti join:
2. Remove column "TableA" and name this table TableBAntiJoin:
3. Append TableA to TableBAntiJoin:
4. Result:
Proud to be a Super User!
@Anonymous,
I would use an anti join in Power Query. Exclude the duplicate rows in TableB, and then append the remaining rows to TableA.
1. Create a left anti join:
2. Remove column "TableA" and name this table TableBAntiJoin:
3. Append TableA to TableBAntiJoin:
4. Result:
Proud to be a Super User!
Thanks for the help. Though I am confused. I have followed your solution but I got the error "A cyclic reference was encountered" when appending.
Also, I don't think I understand your solution. You have name1 - 4 in the final table but isn't this effectively combining the tables into one table, leaving no duplicates. Using your example, the final result should be Table B: name4 (removed name1) and TableA: name1, name2, name3. Am I understanding correctly?
@Anonymous,
The cyclic reference can be avoided by using "Merge Queries as New". This creates a new query.
If the requirement is to have two tables, each with unique names, then you can skip the append step. TableA would have Name1-3 and TableBAntiJoin would have Name4.
Proud to be a Super User!
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 |
---|---|
75 | |
71 | |
56 | |
38 | |
35 |
User | Count |
---|---|
83 | |
68 | |
59 | |
46 | |
45 |