Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
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