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

Despivote dinámico con DAX

Tengo una tabla, que por razones, tiene que ser desdinamizada en PowerBI usando DAX. Por el momento, estoy usando una solución simple y estándar para realizar esta tarea usando el combo estándar SELECTCOLUMNS/UNION, algo como:

 Table =
     VAR t1 =
     SELECTCOLUMNS ( 'Table', "Date", [Date], "Store", "Store1", "Value", [Store1] )
     VAR t2 =
     SELECTCOLUMNS ( 'Table', "Date", [Date], "Store", "Store2", "Value", [Store2] )
     VAR t3 =
     SELECTCOLUMNS ( 'Table', "Date", [Date], "Store", "Store3", "Value", [Store3] )
     RETURN
     UNION ( t1, t2, t3 )

Funciona, pero es bastante feo y, dado que tengo que despivotar muchas columnas, es bastante largo y difícil de manejar. Preferiría una solución más dinámica en la que pudiera especificar las columnas que se desdinamizarían en una tabla o en una variable, pero no puedo resolverlo.

Hasta ahora se me ha ocurrido la siguiente solución, pero todavía implica codificar de forma rígida los nombres de las columnas en la medida:

UnpivotExample =
     var Fields =
     VALUES(FieldList[FieldName]) //Table listing columns to be unpivoted

     var tbl =
     CROSSJOIN(
        SUMMARIZE(
           Table,
           Table[ID]),
           Fields)
     return

     ADDCOLUMNS(
        tbl,
        "Date",SWITCH(
           [FieldName],
           "col1", CALCULATE(FIRSTNONBLANK(Table[col1],1),FILTER(Table,Table[ID]=[ID])),
           "col2", CALCULATE(FIRSTNONBLANK(Table[col2],1),FILTER(Table,Table[ID]=[ID]))... etc

¿Hay alguna manera de hacerlo más dinámico, sin codificar los nombres de las columnas en la medida? (Sí, sé que se puede hacer fácilmente en M, pero es una pregunta del DAX).

Bien

Michal

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

@MichalRosa por qué no puede usar Power Query para lo mismo, ¿por qué no usar la herramienta relativa para anular la dinamización en lugar de hacerlo en DAX?

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