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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
riguberto
Frequent Visitor

Obtenga el valor n superior teniendo en cuenta los valores duplicados

Hola

Estoy tratando de establecer 3 métricas de dax diferentes para obtener los valores 1er,2o,3o de un precio de producto (para diferentes urls).

product_idurl_idLastPriceproduct_priceInvalidPrice
1589461123584114,770
1589462541222114,770
158946455333130,540
1589465648124115,231
1589461325444127,90

Mejor precio 14,77

Segundo mejor precio 14,77 euros

Tercer mejor precio 27,90 euros

Navegando por el foro he encontrado esta fórmula y funciona cuando no son valores duplicados.

Second Best Price = 
SUMx (
    TOPN(1,
        TOPN ( 2, FILTER(priceregistrationraw,and(NOT(priceregistrationraw[InvalidPrice]=1),priceregistrationraw[LastPrice]=1)), [price] , ASC ),
        [price] , DESC
    ),
    CALCULATE ( min ( priceregistrationraw[price])))

Pero mientras Top N muestre duplicados, suma sus valores. ¿Me puedes ayudar?

gracias de antemano!

6 REPLIES 6
harshnathani
Community Champion
Community Champion

Hola @riguberto ,

Crear una columna calculada

rango de rango ?

IF('Table'[LastPrice] á 1 && 'Table'[InvalidPrice] - 0,
Rankx(FILTER('Table','Table'[LastPrice] á 1 && 'Table'[InvalidPrice] á 0),'Table'[product_price],,DESC,Dense))
A continuación, cree estas medidas
Mejor precio ?
MAXX(
RESUMEN('Tabla','Tabla'[product_price],'Tabla'[rango],"Mejor",CALCULATE(MAX('Table'[product_price]),'Tabla'[rango] 1)),[Mejor])
Segundo Precio ?
MAXX(
RESUMEN('Tabla','Tabla'[product_price],'Tabla'[rango],"Mejor",CALCULATE(MAX('Table'[product_price]),'Tabla'[rango] 2)),[Mejor])
Tercer Precio ?
MAXX(
RESUMEN('Tabla','Tabla'[product_price],'Tabla'[rango],"Mejor",CALCULATE(MAX('Table'[product_price]),'Tabla'[rango] 3)),[Mejor])
1.jpg

saludos
Harsh Nathani

¿He respondido a tu pregunta? ¡Marca mi puesto como una solución! Apreciar con un Kudos!! (Haga clic en el botón Pulgares arriba)

amitchandak
Super User
Super User

@riguberto , Probar como

rank = rankx(FILTER(priceregistrationraw,and(NOT(priceregistrationraw[InvalidPrice]=1),priceregistrationraw[LastPrice]=1)),[price],,ASC,Dense)

Second Best Price = 
sumx(filter(priceregistrationraw,[Rank]=2),CALCULATE ( min ( priceregistrationraw[price])))

Gracias por su respuesta.

rango... la creación de esta métrica pop-up el error: no se puede determinar el valor del precio. Tal vez la columna no existe o no es ninguna fila (traduciendo myseflt del español... :S)

ok, no entendía que el rango era una columna en la tabla priceregistrationraw (lo estaba intentando como una métrica (estoy totalmente nuevo)).

Mi problema ahora es que la tabla tiene más products_id y se están clasificando todos juntos. Traté de poner un filtro de product_id, pero ahora el filtro para lastprice e isvalid no están funcionando (el product_id se ve bien)...

Lo que intenté

rank á rankx(FILTER(priceregistrationraw,and(NOT(priceregistrationraw[InvalidPrice]-1),AND(priceregistrationraw[LastPrice]-1,priceregistrationraw[product_id]-EARLIER(priceregistrationraw[product_id]))))),[total_price_numeric],ASC,Dense)
harshnathani
Community Champion
Community Champion

Hola @riguberto ,

Es esto lo que estás buscando.

https://community.powerbi.com/t5/Desktop/Top-3-unique-products-sold-per-product-category-on-which-da...


Harsh Nathani

¿He respondido a tu pregunta? ¡Marca mi puesto como una solución! Apreciar con un Kudos!! (Haga clic en el botón Pulgares arriba)

¡Gracias! esta solución está funcionando.

Mi única preocupación es sobre el rendimiento. La tabla priceregistrationraw es una tabla de hechos con más de 10 millones de filas... es eficiente crear una nueva tabla con la misma información?

gracias de nuevo

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors