Skip to main content

Table.Pivot

Ņemot vērā kolonnu pārus, kas pārstāv atribūtu vērtību pārus, dati atribūtu kolonnā tiek pārvērsti par kolonnu virsrakstiem.

Syntax

Table.Pivot(
table as table,
pivotValues as list,
attributeColumn as text,
valueColumn as text,
optional aggregationFunction as function
) as table

Remarks

Ņemot vērā kolonnu pārus, kas pārstāv atribūtu vērtību pārus, dati atribūtu kolonnā tiek pārvērsti par kolonnu virsrakstiem.

Examples

Example #1

Izmantojiet vērtības a, b un c tabulas ({ [ key = "x", attribute = "a", value = 1 ], [ key = "x", attribute = "c", value = 3 ], [ key = "y", attribute = "a", value = 2 ], [ key = "y", attribute = "b", value = 4 ] }) atribūtu kolonnā un novietojiet tās atsevišķās kolonnās.

Table.Pivot(
Table.FromRecords({
[key = "x", attribute = "a", value = 1],
[key = "x", attribute = "c", value = 3],
[key = "y", attribute = "a", value = 2],
[key = "y", attribute = "b", value = 4]
}),
{"a", "b", "c"},
"attribute",
"value"
)

Result:

Table.FromRecords({
[key = "x", a = 1, b = null, c = 3],
[key = "y", a = 2, b = 4, c = null]
})

Example #2

Izmantojiet vērtības a, b un c tabulas ({ [ key = "x", attribute = "a", value = 1 ], [ key = "x", attribute = "c", value = 3 ], [ key = "x", attribute = "c", value = 5 ], [ key = "y", attribute = "a", value = 2 ], [ key = "y", attribute = "b", value = 4 ] }) atribūtu kolonnā un novietojiet tās atsevišķās kolonnās. Ar atslēgas x atribūtu c ir saistītas vairākas vērtības, tāpēc izmantojiet funkciju List.Max, lai novērstu konfliktu.

Table.Pivot(
Table.FromRecords({
[key = "x", attribute = "a", value = 1],
[key = "x", attribute = "c", value = 3],
[key = "x", attribute = "c", value = 5],
[key = "y", attribute = "a", value = 2],
[key = "y", attribute = "b", value = 4]
}),
{"a", "b", "c"},
"attribute",
"value",
List.Max
)

Result:

Table.FromRecords({
[key = "x", a = 1, b = null, c = 5],
[key = "y", a = 2, b = 4, c = null]
})

Category

Table.Column operations