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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Syndicate_Admin
Administrator
Administrator

Valor máximo basado en otra columna e ignorar columna de fecha

Hola

Estoy tratando de calcular el MÁXIMO de unidades por ID (solo me interesa el valor más alto en la columna Unidades para cada ID.

Mis datos de ejemplo en la Tabla 1.

Tabla 1
FechaIDENTIFICACIÓNUnidades
2020-10-01M2005322
2020-10-05B2015125
2020-10-08B2014

223

2020-11-12M2006

1934

2021-07-09M211016
2021-07-12M211119
2021-07-12M211227
2021-07-13M21045733
2021-07-13M2104180
2021-07-15B2108167
2021-07-15B21059
2021-11-03B210957
2021-11-05B210250
2021-11-11M20039829
2021-11-17B21072064
2021-11-17B2107380
2021-11-29M20061305
2022-03-24B2107168
2022-03-23B2113100
2022-03-04B220118
2022-03-08B220316
2022-03-18M21062336

Tengo una tabla de calendario con Fecha y Año Mes conectada a la Tabla 1.
El resultado que quiero es esta tabla:

Año MesUnidades
2020-10670
2020-111934
2021-075971
2021-1112000
2022-03

2470

He probado estas medidas:

Medida=
CALCULAR (
MÁXIMO('Tabla 1'[Unidades]),
FILTRO('Tabla 1', 'Tabla 1'[ID]=SELECTEDVALUE('Tabla 1'[ID])
),
USERELATIONSHIP('Calendario FC'[Fecha del calendario], 'Tabla 1'[Fecha])
)
Suma de la medida =
SUMX('Tabla 1', 'Tabla 1'[Medida])
Eso toma el valor máximo de ID: s en el mismo mes, pero si están en meses diferentes, todavía obtengo duplicados.
¡Agradezco tu ayuda!
BR
Mayo
1 ACCEPTED SOLUTION

¡Gracias!

Como no tenía el número de fila en mi tabla real, no funcionó para mí. Pero la idea de crear una columna con 1 o 0 fue una gran idea.

Lo que funcionó para mí fue este código:

Unidades máximas =
FUERON CurrentID (Id. de corriente) = 'Tabla 1'[ID]
FUERON CurrentUnits (Unidades de corriente) = 'Tabla 1'[Unidades]

DEVOLUCIÓN
SI(
CurrentUnits (Unidades de corriente) = CALCULAR(
MÁXIMO('Tabla 1'[Unidades]),
FILTRO(
TODO('Tabla 1'),
'Tabla 1'[ID] = CurrentID (Id. de corriente)
)
),
1,
0
)
¡Gracias por su ayuda!

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

@majos978

No entiendo cómo está obteniendo 5971 el 2021-07, 12000 el 2021-11 y 2470 el 2022-03.

¿Puede aclarar un poco más?

Saludos

Sanalytics

Syndicate_Admin
Administrator
Administrator

Hola @majos978,

¿Podría compartir el resultado que desee?
Creo que no me estoy haciendo una idea.

Lo siento, he pedido mi Tabla 1 por ID y he añadido un número de fila.

Solo quiero mantener el valor máximo por ID de unidades. Esto significa que quiero eliminar las filas 6, 7, 16, 18.

Ro datar estas unidades
1 2020-10-08 b2014 223
2 2020-10-05 b2015 125
3 2021-11-05 B2102 50
4 2021-07-15 B2105 9
5 2021-11-17 B2107 2064
6 2021-11-17 B2107 380
7 2022-03-24 B2107 168
8 2021-07-15 B2108 167
9 2021-11-03 B2109 57
10 2022-03-23 B2113 100
11 2022-03-04 B2201 18
12 2022-03-08 B2203 16
13 2021-11-11 M2003 9829
14 2020-10-01 M2005 322
15 2020-11-12 M2006 1934
16 2021-11-29 M2006 1305
17 2021-07-13 M2104 5733
18 2021-07-13 M2104 180
19 2022-03-18 M2106 2336
20 2021-07-09 M2110 16
21 2021-07-12 M2111 19
22 2021-07-12 M2112 27

Espero que esto lo aclare.

¡Gracias!

@majos978

Cree una columna calculada para descartar el id duplicado. A continuación se muestra el código

Día =
FUERON _1 =
CALCULAR(
MÁXIMO( 'Mesa'[ID] ),
COMPENSAR( -1,
RESUMIR( TODOS SELECCIONADOS( 'Mesa' ), 'Mesa'[ID], 'Mesa'[Fila] , 'Mesa'[Fecha], 'Mesa'[Unidades]),
ORDENAR( 'Mesa'[Fila],ASC )
, PARTITIONBY( 'Mesa'[ID] )
) )
FUERON _2 =
SI(
'Mesa'[ID] = _1,
1,ESPACIO EN BLANCO() )
DEVOLUCIÓN
_2
Y use esa columna en el objeto visual como filtro de nivel visual. A continuación se muestra la captura de pantalla.
sanalytics_0-1713528462789.png

Espero que esto te ayude.

Saludos

Sanalytics

Si es su solución, por favor dale me gusta y acéptala como solución

¡Gracias!

Como no tenía el número de fila en mi tabla real, no funcionó para mí. Pero la idea de crear una columna con 1 o 0 fue una gran idea.

Lo que funcionó para mí fue este código:

Unidades máximas =
FUERON CurrentID (Id. de corriente) = 'Tabla 1'[ID]
FUERON CurrentUnits (Unidades de corriente) = 'Tabla 1'[Unidades]

DEVOLUCIÓN
SI(
CurrentUnits (Unidades de corriente) = CALCULAR(
MÁXIMO('Tabla 1'[Unidades]),
FILTRO(
TODO('Tabla 1'),
'Tabla 1'[ID] = CurrentID (Id. de corriente)
)
),
1,
0
)
¡Gracias por su ayuda!

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors