March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe 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
¿Cómo se crea una tabla calculada con UNION(SELECTCOLUMNS()) para combinar algunas columnas y luego agregar otras columnas tal como están con SELECTCOLUMNS()?
Tengo las siguientes columnas:
Quiero transponer Varianza total, Nivel de varianza 1 y Nivel de varianza 2 en una columna de "Categoría" y "Valor". He usado UNION(SELECTCOLUMNS()) para lograr esto. Pero todavía quiero mantener las columnas Fecha del calendario y Grupo de negocios tal como están en la nueva tabla. ¿Cómo puedo agregar a este cálculo para lograr eso?
Solved! Go to Solution.
Jugué hasta que encontré mi respuesta, para cualquiera que se pregunte, esto es lo que hice:
UNION(
SELECTCOLUMNS(Plant_Variances, "Category", "Total Variance", "Value", Plant_Variances[Total_Variance], "Calendar Date", Plant_Variances[Calendar_Date], "Business Group", Plant_Variances[Business_Group]),
SELECTCOLUMNS(Plant_Variances, "Category", "Variance Level 1", "Value", Plant_Variances[Variance_Level_1], "Calendar Date", Plant_Variances[Calendar_Date], "Business Group", Plant_Variances[Business_Group),
SELECTCOLUMNS(Plant_Variances, "Category", "Variance Level 2", "Value", Plant_Variances[Variance_Level_2], "Calendar Date", Plant_Variances[Calendar_Date], "Business Group", Plant_Variances[Business_Group]))
Prueba esto:
Puede utilizar la función UNION junto con la función SELECTCOLUMNS para combinar las columnas que desea transponer en una columna "Categoría" y "Valor" y mantener las otras columnas tal como están en la nueva tabla. Aquí hay un ejemplo de cómo puede hacer esto:
Total Variance = SELECTCOLUMNS(FILTER(OriginalTable, OriginalTable[Total Variance] <> BLANK()), "Category", "Total Variance", "Value", OriginalTable[Total Variance])
Variance Level 1 = SELECTCOLUMNS(FILTER(OriginalTable, OriginalTable[Variance Level 1] <> BLANK()), "Category", "Variance Level 1", "Value", OriginalTable[Variance Level 1])
Variance Level 2 = SELECTCOLUMNS(FILTER(OriginalTable, OriginalTable[Variance Level 2] <> BLANK()), "Category", "Variance Level 2", "Value", OriginalTable[Variance Level 2])
TransposedTable = UNION(Total Variance, Variance Level 1, Variance Level 2)
FinalTable = JOIN(TransposedTable,FILTER(OriginalTable, OriginalTable[Calendar Date] <> BLANK()), "Calendar Date")
Tenga en cuenta que en el código anterior
Si esta publicación ayuda, considere aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
¡¡Aprecia tus Kudos!!
LinkedIn | Twitter | Blog | YouTube (en inglés)
, he usado la función FILTER para verificar si las columnas no están vacías antes de agregarlas a la tabla final.
Jugué hasta que encontré mi respuesta, para cualquiera que se pregunte, esto es lo que hice:
UNION(
SELECTCOLUMNS(Plant_Variances, "Category", "Total Variance", "Value", Plant_Variances[Total_Variance], "Calendar Date", Plant_Variances[Calendar_Date], "Business Group", Plant_Variances[Business_Group]),
SELECTCOLUMNS(Plant_Variances, "Category", "Variance Level 1", "Value", Plant_Variances[Variance_Level_1], "Calendar Date", Plant_Variances[Calendar_Date], "Business Group", Plant_Variances[Business_Group),
SELECTCOLUMNS(Plant_Variances, "Category", "Variance Level 2", "Value", Plant_Variances[Variance_Level_2], "Calendar Date", Plant_Variances[Calendar_Date], "Business Group", Plant_Variances[Business_Group]))
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.