Forum Discussion
Measure using columns from 2 different tables
Hi,
I have the following 2 tables - I would like to create a measure which multiply the units from Table1 with the relevant prices from Table2 (considering item and year).
I would like to do this using a measure/calculation but without merging/appending queries. I am looking for the most efficient solution given the amount of data could, in reality, be massive.
Could you please help?
Many thanks.
Table1
| Item | Units | Year |
| A | 5000 | 2020 |
| B | 10000 | 2020 |
| C | 2000 | 2020 |
Table2
| Item | Price | Year |
| A | 5 | 2020 |
| B | 6 | 2020 |
| C | 7 | 2020 |
| A | 3 | 2019 |
| B | 2 | 2019 |
| C | 4 | 2019 |
Yoann
Both are new column in table1
//new column table 1 price tab1 = maxx(filter(table2,table1[Item]=table2[Item] && table1[year]=table2[year]),table2[Price]) value = [price tab1]*[Units]
7 Replies
- bfernandezResolver II
Hi wagrezy
You need to first create the relationship on the Items:
Than create this measure:
Measure = SUM('Table1'[Units]) * SUM('Table2'[Price])Let me know if this solves your problem.If so, please mark this post as the solution to better assist others! 😁- wagrezyHelper I
Hi,
Many thanks for your reply, that seems to work only if you create a relationship between the table that involve year and item, i.e. you have to dupplicate columns and merge them.
Also, I noticed if you create a matrix, the total row would return a result much higher than the sum of the 3 rows.
- amitchandakSuper User
Both are new column in table1
//new column table 1 price tab1 = maxx(filter(table2,table1[Item]=table2[Item] && table1[year]=table2[year]),table2[Price]) value = [price tab1]*[Units]- wagrezyHelper I
Hi,
Many thanks for your reply, that seems to be the best solution so far. Would you say that the most efficient solution to use?
- v-gizhi-msftCommunity Support
Hi,
In my way, you do not need to create any relationship.
If my answer has solved your issue, please mark it as a solution for others to see it.
Best Regards,
Giotto Zhi
- v-gizhi-msftCommunity Support
Hi,
Please try this measure without creating any relationships:
Measure = CALCULATE(SUMX(Table1,Table1[Units]*CALCULATE(SUM('Table2'[Price]),FILTER('Table2','Table2'[Item] in FILTERS('Table1'[Item])))))Choose [Item] from table1 and this measure as a table visual, it shows:
Best Regards,
Giotto Zhi
- wagrezyHelper I
Hi,
Many thanks for your reply.
That also applies the calculation to 2019 as there is no relationship on table for years. Again the total rows seems to be much higher than the sum of the 3 rows.