The ultimate Microsoft Fabric, Power BI, Azure AI, and SQL learning event: Join us in Stockholm, September 24-27, 2024.
Save €200 with code MSCUST on top of early bird pricing!
Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
Tengo que combinar una columna de 3 tablas separadas en una tabla con todas las combinaciones:
Así que este debe ser el resultado final
Por lo tanto, solo deben ser las combinaciones las que están presentes en los datos, NO TODAS las combinaciones posibles, por lo que CROSSJOIN por sí solo no hace el trabajo en mi opinión.
de la Tabla 1 | de la Tabla 2 | de la Tabla 3 |
A | A | A |
B | B | nulo |
C | nulo | C |
nulo | D | D |
E | nulo | nulo |
nulo | F | nulo |
nulo | nulo | G |
Estos son los pasos que puedes seguir:
1. Cree un índice para cada tabla.
En Power Query, agregue Columna – Columna de índice – Desde 1.
2. Crear una tabla calculada.
Table =
var _table=
SUMMARIZE(
'Table1','Table1'[Index],'Table1'[from table 1],
"from table 2",LOOKUPVALUE('Table2'[from table 2],'Table2'[Index],'Table1'[Index]),
"from table 3",LOOKUPVALUE('Table3'[from table 3],'Table3'[Index],'Table1'[Index]))
return
SUMMARIZE(
_table,[from table 1],[from table 2],[from table 3])
3. Resultado:
Saludos
Liu Yang
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente
TB1 | TB2 | TB3 |
A | A | A |
B | B | C |
C | D | D |
E | F | G |
Hola Liu,
Gracias por su respuesta. Casi listo, pero presenté mis tablas iniciales algo diferentes como se pretendía. Los valores nulos no están exactamente en las filas como en la primera publicación. Los valores nulos no están ahí en absoluto, solo quería mostrar los valores nulos en el resultado final. Por lo tanto, la tabla anterior es el punto de partida correcto para obtener la tabla de resultados. Espero que esto ayude, ¡y gracias de nuevo por sus esfuerzos!
Hola, @Artefact
Intente usar la función intersect()
Nedd interseca dos veces para combinar 3 tablas
adenda:
Por lo tanto, la tabla base 1 tiene una columna con solo ABCE, la tabla 2 ABDF y la tabla 3 ACDG.
No quiero un producto cartesiano con CROSSJOIN, eso daría como resultado una tabla mucho más grande
Ok, ahora tengo lo que quieres. Desea una combinación externa completa.
Desafortunadamente, DAX no admite este tipo de operación de combinación que yo sepa, por lo que si no puede insertar esta operación en Power Query (que de hecho admite combinaciones externas completas, combinación externa completa - Power Query | Microsoft Learn) entonces la única solución que se me ocurre es una solución no tan elegante, que es la siguiente:
Hazme saber si funciona para ti.
Gracias Lorenzo, parece que tu idea funciona, pero necesito el código completo para tus soluciones. No entiendo dónde puse las funciones UNION y DISTINCT. Parece que estas funciones no funcionan con 2 columnas (distintas) o 3 (unión) en mi código.
Hola, no está muy claro cuál es el punto de partida y cuál es el resultado final.
¿Cuál es el criterio para unirse a la mesa? Estás diciendo en el mismo mensaje que esperas todas las combinaciones posibles y justo después de eso no quieres todas las combinaciones posibles, por lo que es bastante difícil entender lo que estás buscando.
El resultado es la tabla del post
Muestra el resultado que esperas
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Check out the August 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |