Funkcja grouping_id
Dotyczy: Databricks SQL Databricks Runtime
Zwraca poziom grupowania dla zestawu kolumn.
Składnia
grouping_id( [col1 [, ...] ] )
Argumenty
colN
: odwołanie do kolumny zidentyfikowane w elemencieGROUPING SET
,ROLLUP
lubCUBE
.
Zwraca
A BIGINT.
Funkcja łączy funkcję grupowania dla kilku kolumn w jeden, przypisując każdą kolumnę nieco w wektora bitowego.
Element col1
jest reprezentowany przez bit o najwyższej kolejności.
Bit jest ustawiony na wartość 1, jeśli wiersz oblicza sumę częściową dla odpowiedniej kolumny.
Określenie argumentu nie jest równoważne określeniu wszystkich kolumn wymienionych w GROUPING SET
obiekcie , CUBE
lub ROLLUP
.
Przykłady
> SELECT name, age, grouping_id(name, age),
conv(cast(grouping_id(name, age) AS STRING), 10, 2),
avg(height)
FROM VALUES (2, 'Alice', 165), (5, 'Bob', 180) people(age, name, height)
GROUP BY cube(name, age)
Alice 2 0 0 165.0
Alice NULL 1 1 165.0
NULL 2 2 10 165.0
NULL NULL 3 11 172.5
Bob NULL 1 1 180.0
Bob 5 0 0 180.0
NULL 5 2 10 180.0