Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
AmritaOS
Helper I
Helper I

Return Product Name that has the highest unit price

hello

i am looking to return the name of the product that has the highest unit proce. 

product 1 , price 20

product 2 , price 10

product 3 , price 5

 

so i want to return the product name that has the max unit price = Product 1

 

how do i do this?

thanks!!

Amrita

 

2 ACCEPTED SOLUTIONS
bcdobbs
Super User
Super User

Try something like this:

VAR MaxPrice = 
	MAX(Table[Price])

VAR ProductNames = 
	CALCULATE (
		CONCATENATEX(
			VALUES(Table[Product]),
			Table[Product],
			", " ),
	Table[Price] = MaxPrice
	)
	
RETURN ProductNames



Ben Dobbs

LinkedIn | Twitter | Blog

Did I answer your question? Mark my post as a solution! This will help others on the forum!
Appreciate your Kudos!!

View solution in original post

AmritaOS
Helper I
Helper I

i did the below and it worked - nice and simple!

Most Expensive Product = LOOKUPVALUE(Products[ProductName],Products[UnitPrice],MAX(Products[UnitPrice]))

 

View solution in original post

5 REPLIES 5
AmritaOS
Helper I
Helper I

i did the below and it worked - nice and simple!

Most Expensive Product = LOOKUPVALUE(Products[ProductName],Products[UnitPrice],MAX(Products[UnitPrice]))

 

In your test case that works fine. Just be aware that LOOKUPVALUE will return an error if more than one product has the same max price unless you specify an alternative result. @calerof  solution will return BLANK in such cases. I included CONCATENATEX as it will return a list of all max prices.



Ben Dobbs

LinkedIn | Twitter | Blog

Did I answer your question? Mark my post as a solution! This will help others on the forum!
Appreciate your Kudos!!
calerof
Impactful Individual
Impactful Individual

Hi @AmritaOS ,

You could also use this code:

Highest Price = 
CALCULATE(
    SELECTEDVALUE(Table_20211202[Product Name]),
    Table_20211202[Unit Price] = MAX(Table_20211202[Unit Price])
)

And get this result:

Test.png

 

Hope it helps.

Regards,

Fernando

bcdobbs
Super User
Super User

Try something like this:

VAR MaxPrice = 
	MAX(Table[Price])

VAR ProductNames = 
	CALCULATE (
		CONCATENATEX(
			VALUES(Table[Product]),
			Table[Product],
			", " ),
	Table[Price] = MaxPrice
	)
	
RETURN ProductNames



Ben Dobbs

LinkedIn | Twitter | Blog

Did I answer your question? Mark my post as a solution! This will help others on the forum!
Appreciate your Kudos!!

thank you yes this is definatelly way better and future proofs the measure! 

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.