Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and a 50 percent discount on exams.
Get startedEarn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola
Quiero rellenar los valores de la columna Modificador en la tabla 2 a través del identificador basado en la funcionalidad de búsqueda. El valor del identificador no es una cadena única, por lo que donde viene el identificador el código debe rellenar el valor de la columna modificadora de la tabla 2.
Incluso si el mismo identificador está en varios registros, sigue funcionando y obtiene el valor modificador de la tabla 2.
¿Cómo podría hacerlo en PowerBI mediante una consulta DAX?
Tenga en cuenta que he creado mi flujo de trabajo en la vista de panel, no en la vista de transformación.
¡Gracias!
Tabla 1 |
To_Date | IDENTIFICADOR | ACCOUNT_ID | MODEL_ID | Modificar |
2/29/2024 | 100+201 | 100 | 201 | 0.12 |
2/29/2024 | 105+210 | 105 | 210 | 0.23 |
2/29/2024 | 110+220 | 110 | 220 | 0.25 |
2/29/2024 | 100+201 | 100 | 201 | 0.12 |
2/29/2024 | 115+230 | 115 | 230 | 0.3 |
2/29/2024 | 105+210 | 105 | 210 | 0.23 |
2/29/2024 | 110+220 | 110 | 220 | 0.25 |
Cuadro 2 |
Cuadro 2 | Resultado esperado | ||||
To_Date | IDENTIFICADOR | ACCOUNT_ID | MODEL_ID | Modifier_Lookup | |
3/31/2024 | 100+201 | 100 | 201 | 0.12 | |
3/31/2024 | 105+210 | 105 | 210 | 0.23 | |
3/31/2024 | 110+220 | 110 | 220 | 0.25 | |
3/31/2024 | 100+201 | 100 | 201 | 0.12 | |
3/31/2024 | 115+230 | 115 | 230 | 0.3 | |
3/31/2024 | 105+210 | 105 | 210 | 0.23 | |
3/31/2024 | 110+220 | 110 | 220 | 0.25 |
Hola @Bansi008 ,
Utilizo la siguiente instrucción DAX para crear una columna calculada en la Tabla 2:
Modifier_Lookup_Tom =
var currentIdentifier = 'Table2'[IDENTIFIER]
return
AVERAGEX(
SUMMARIZE(
FILTER( 'Table1' , 'Table1'[IDENTIFIER] = currentIdentifier )
, Table1[IDENTIFIER]
, Table1[Modifier]
)
, Table1[Modifier]
)
La captura de pantalla muestra la Tabla 2:
Debido a que está buscando un valor escalar, es decir, un valor único, en lugar de filas, debe definir cómo se debe calcular este valor único; en mi ejemplo anterior, decidí tomar el promedio aprovechando la función DAX AVERAGEX. Por supuesto, también puedes usar MINX o MAXX. La agregación es necesaria, ya que la instrucción de filtro FILTER( 'Table1' , 'Table1'[IDENTIFIER] = currentIdentifier puede devolver varios valores).
La complejidad de la agregación está definida por sus reglas de negocio y solo limitada por su imaginación.
Esperemos que esto te ayude a afrontar tu reto.
Saludos
Tom
Hola Tom,
Déjame probar esta solución y volver a ti.
Gracias por tu ayuda