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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Cómo filtrar una columna en medida basada en otra columna

Así que tengo dos tablas: la Tabla A y la Tabla B. tienen una o muchas relaciones

Cuadro A

IDENTIFICACIÓNClaseNombre
202212AÑOSAlgún nombre aleatorio
202214AÑOSAlgún nombre aleatorio
202111LANAlgún nombre aleatorio
202122LANAlgún nombre aleatorio

y cuadro 2

IDENTIFICACIÓNTimestamp valor1 valor2
202212 2021-09-12 23:22:11 12.4 43
202212 2021-12-11 12:12:23 28.6 54
202111 2021-09-01 03:23:22 32.7 76
2021112021-07-07 12:12:09 32.8 77


Así que me gustaría una medida donde obtengo todo el valor promedio para cada ID de Clase "LAT". ¿cómo puedo hacerlo en una medida?

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Allí, @PowerrrBrrr

Intenta crear una medida como esta:

ave = 
var _t=FILTER(ALL(TableA),'TableA'[Class] in {"LAT"})
var _ID_list=SUMMARIZE(_t,[ID])
var _if=IF(ISINSCOPE(TableB[ID]),IF(MAX('TableB'[ID])in _ID_list,DIVIDE(SUM(TableB[value1])+SUM(TableB[value2]),2)))
return _if

Resultado:

vangzhengmsft_0-1634177131691.png

Consulte el archivo adjunto a continuación para obtener más detalles. Espero que esto ayude.

Saludos
Equipo de apoyo a la comunidad _ Zeon Zheng


Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Allí, @PowerrrBrrr

Intenta crear una medida como esta:

ave = 
var _t=FILTER(ALL(TableA),'TableA'[Class] in {"LAT"})
var _ID_list=SUMMARIZE(_t,[ID])
var _if=IF(ISINSCOPE(TableB[ID]),IF(MAX('TableB'[ID])in _ID_list,DIVIDE(SUM(TableB[value1])+SUM(TableB[value2]),2)))
return _if

Resultado:

vangzhengmsft_0-1634177131691.png

Consulte el archivo adjunto a continuación para obtener más detalles. Espero que esto ayude.

Saludos
Equipo de apoyo a la comunidad _ Zeon Zheng


Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola @PowerrrBrrr ,

simplemente puede calcular el promedio y establecer el contexto del filtro en LAT. La siguiente medida debería hacerlo:

Average LAT =
CALCULATE(
    AVERAGE( 'Table B'[AverageSum] ),
    'Table A'[Class] = "LAT"
)

Si desea devolver solo un valor si LAT está en el contexto, debe usar la función FILTER:

Average LAT =
CALCULATE(
    AVERAGE( 'Table B'[AverageSum] ),
    FILTER(
        'Table A',
        'Table A'[Class] = "LAT"
    )
)

Si necesita ayuda, por favor hágamelo saber.
Si respondiera a su pregunta, estaría encantado de que pudiera marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍
Saludos
Denis

Soy soory pero parece que el AVERAGESUM que has tomado como una columna mientras que es diferente. Además, no tome el nombre de la columna como Promedio o Suma, sino que simplemente tome el nombre de la columna como VALOR. Quiero todas las filas de Valor para la clase LAT

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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