October 28 & 29: Experts share their secrets on how to pass the Fabric Analytics Engineer certification exam—live. Learn more
Hi all,
I have two queries that i would to join...
So first query is a table of 3 columns (Date, product, Quantity) and for this one i have everyday of a year
for the second query, i have 4 columns (Date, product, price, segment product) but only 4 point of data per year per product (it's a pricing policy/strtegy)
my objective is to add the price columns to my first table, to be able to simply multiply my quantity by princing decided by corporate.
Thanks a lot
Let me know if i can be more precise
Solved! Go to Solution.
Hi @gpp007 ,
First create a column in query 2:
next period =
var _next= CALCULATE(MIN('Table'[Date]),FILTER('Table','Table'[Date]>EARLIER('Table'[Date])&&'Table'[Product]=EARLIER('Table'[Product])))
Return
IF(_next=BLANK(),DATE(YEAR(MAX('Table'[Date])),12,31),_next)
Then create a measure as below:
_cost =
CALCULATE(MIN('Table'[Price]),FILTER('Table','Table'[Date]<=MAX('Query 1'[Date])&&'Table'[next period]>=MAX('Query 1'[Date])&&'Table'[Product]=MAX('Query 1'[Product])))
And you will find that the price has been added to query 1 according to period setting.
For the related .pbix file,pls see attached.
Best Regards,
Kelly
Did I answer your question? Mark my post as a solution!
@gpp007 , a new column like
minx(filter(table2, table1[product] =table2[product] && table1[Date] = table2[Date]),table2[price])
or
minx(filter(table2, table1[product] =table2[product] && year(table1[Date]) = year(table2[Date])),table2[price])
hi amitchandak
thanks for quick reply, i used your method, but it partially worked... the difficulty is to have a changing price between period, if i use your method, on my new column i only have the data i need at one date vs all date (in order to calculate turnover etc).
Hi @gpp007 ,
First create a column in query 2:
next period =
var _next= CALCULATE(MIN('Table'[Date]),FILTER('Table','Table'[Date]>EARLIER('Table'[Date])&&'Table'[Product]=EARLIER('Table'[Product])))
Return
IF(_next=BLANK(),DATE(YEAR(MAX('Table'[Date])),12,31),_next)
Then create a measure as below:
_cost =
CALCULATE(MIN('Table'[Price]),FILTER('Table','Table'[Date]<=MAX('Query 1'[Date])&&'Table'[next period]>=MAX('Query 1'[Date])&&'Table'[Product]=MAX('Query 1'[Product])))
And you will find that the price has been added to query 1 according to period setting.
For the related .pbix file,pls see attached.
Best Regards,
Kelly
Did I answer your question? Mark my post as a solution!
User | Count |
---|---|
105 | |
99 | |
98 | |
86 | |
49 |
User | Count |
---|---|
162 | |
142 | |
132 | |
102 | |
63 |