Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Necesito crear una tabla basada en los valores de otras tres tablas. Cada vez que se introduce una nueva fecha para un ID en cualquiera de las tres tablas, la nueva fecha debe agregarse a la nueva tabla junto con la entrada más reciente para el ID de las tres tablas.
Id | Fecha | Estado |
3321 | 1/10/20 8:34 AM | Rojo |
3400 | 1/10/20 1:52 PM | Null |
3412 | 1/11/20 7:28 AM | Verde |
3482 | 1/12/20 2:24 PM | Amarillo |
3512 | 1/13/20 9:32 AM | Amarillo |
3400 | 1/13/20 11:22 AM | Amarillo |
Id | Fecha | Clientes afectados |
3321 | 1/10/20 8:34 AM | todo |
3400 | 1/10/20 1:52 PM | Null |
3412 | 1/11/20 7:28 AM | Ninguno |
3482 | 1/12/20 2:24 PM | Ninguno |
3512 | 1/13/20 9:32 AM | todo |
3400 | 1/13/20 11:22 AM | Ninguno |
3321 | 1/15/20 3:41 PM | Ninguno |
Id | Fecha | Severidad |
3321 | 1/10/20 8:34 AM | Alto |
3400 | 1/10/20 1:52 PM | Null |
3412 | 1/11/20 7:28 AM | Bajo |
3482 | 1/12/20 2:24 PM | Bajo |
3512 | 1/13/20 9:32 AM | Alto |
3400 | 1/13/20 11:22 AM | Bajo |
Resultados esperados
Id | Fecha | Estado | Clientes afectados | Severidad |
3321 | 1/10/20 8:34 AM | Rojo | todo | Alto |
3400 | 1/10/20 1:52 PM | Null | Null | Null |
3412 | 1/11/20 7:28 AM | Verde | Ninguno | Bajo |
3482 | 1/12/20 2:24 PM | Amarillo | Ninguno | Bajo |
3512 | 1/13/20 9:32 AM | Amarillo | todo | Alto |
3400 | 1/13/20 11:22 AM | Amarillo | Ninguno | Bajo |
3321 | 1/15/20 3:41 PM | Rojo | Ninguno | Alto |
Solved! Go to Solution.
Hola @PolarBear ,
Puede manejarlo en Power Query Editor, pegue el siguiente código en Advance Editor y reemplace el nombre de la tabla por uno corregido:
let
Source = Table.NestedJoin(t2, {"ID", "Date"}, t1, {"ID", "Date"}, "t1", JoinKind.LeftOuter),
#"Expanded t1" = Table.ExpandTableColumn(Source, "t1", {"ID", "Date", "Status"}, {"t1.ID", "t1.Date", "t1.Status"}),
#"Merged Queries" = Table.NestedJoin(#"Expanded t1", {"ID", "Date"}, t3, {"ID", "Date"}, "t3", JoinKind.LeftOuter),
#"Expanded t3" = Table.ExpandTableColumn(#"Merged Queries", "t3", {"ID", "Date", "Severity"}, {"t3.ID", "t3.Date", "t3.Severity"}),
#"Removed Columns" = Table.RemoveColumns(#"Expanded t3",{"t1.ID", "t1.Date", "t3.ID", "t3.Date"}),
#"Reordered Columns" = Table.ReorderColumns(#"Removed Columns",{"ID", "Date", "t1.Status", "Customers Affected", "t3.Severity"}),
#"Sorted Rows1" = Table.Sort(#"Reordered Columns",{{"ID", Order.Ascending}, {"Date", Order.Ascending}}),
#"Sorted Rows" = Table.Sort(#"Sorted Rows1",{{"ID", Order.Ascending}}),
#"Filled Down" = Table.FillDown(#"Sorted Rows",{"t1.Status", "t3.Severity"}),
#"Renamed Columns" = Table.RenameColumns(#"Filled Down",{{"t1.Status", "Status"}, {"t3.Severity", "Severity"}})
in
#"Renamed Columns"
Puede encontrar mi archivo PBIX de ejemplo mediante este enlace.
Saludos
Rena
No puedo conseguir que sus datos de muestra se muevan con los resultados esperados, específicamente para 3321, la segunda entrada.
Me disculpo, he pegado datos incorrectos... He actualizado mis resultados esperados.
Gracias
Trate como
summarize(
New Table =
union(
selectcolumns(Table1,"ID",[ID],"Date",Table[Date],"Status",Table[Status],"Customers Affected","","Severity",""),
selectcolumns(Table2,"ID",[ID],"Date",Table[Date],"Status","","Customers Affected",Table[Customers Affected],"Severity",""),
selectcolumns(Table2,"ID",[ID],"Date",Table[Date],"Status","","Customers Affected","","Severity",Table[[Severity])
),
[ID],"Date",Max([Date]),"Status",max(Status)," Customers Affected",max([Customers Affected]),"Severity",max([Severity]))
@amitchandak , esto está cerca, pero necesito cada fecha que cualquiera de ellos cambió, con el nuevo valor y el valor más reciente de los que no cambiaron.
Hola @PolarBear ,
Puede manejarlo en Power Query Editor, pegue el siguiente código en Advance Editor y reemplace el nombre de la tabla por uno corregido:
let
Source = Table.NestedJoin(t2, {"ID", "Date"}, t1, {"ID", "Date"}, "t1", JoinKind.LeftOuter),
#"Expanded t1" = Table.ExpandTableColumn(Source, "t1", {"ID", "Date", "Status"}, {"t1.ID", "t1.Date", "t1.Status"}),
#"Merged Queries" = Table.NestedJoin(#"Expanded t1", {"ID", "Date"}, t3, {"ID", "Date"}, "t3", JoinKind.LeftOuter),
#"Expanded t3" = Table.ExpandTableColumn(#"Merged Queries", "t3", {"ID", "Date", "Severity"}, {"t3.ID", "t3.Date", "t3.Severity"}),
#"Removed Columns" = Table.RemoveColumns(#"Expanded t3",{"t1.ID", "t1.Date", "t3.ID", "t3.Date"}),
#"Reordered Columns" = Table.ReorderColumns(#"Removed Columns",{"ID", "Date", "t1.Status", "Customers Affected", "t3.Severity"}),
#"Sorted Rows1" = Table.Sort(#"Reordered Columns",{{"ID", Order.Ascending}, {"Date", Order.Ascending}}),
#"Sorted Rows" = Table.Sort(#"Sorted Rows1",{{"ID", Order.Ascending}}),
#"Filled Down" = Table.FillDown(#"Sorted Rows",{"t1.Status", "t3.Severity"}),
#"Renamed Columns" = Table.RenameColumns(#"Filled Down",{{"t1.Status", "Status"}, {"t3.Severity", "Severity"}})
in
#"Renamed Columns"
Puede encontrar mi archivo PBIX de ejemplo mediante este enlace.
Saludos
Rena
Check out the July 2025 Power BI update to learn about new features.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.