Sdílet prostřednictvím


Funkce grouping_id

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime

Vrátí úroveň seskupení pro sadu sloupců.

Syntaxe

grouping_id( [col1 [, ...] ] )

Argumenty

  • colN: Odkaz na sloupec identifikovaný v znaméně GROUPING SET, ROLLUPnebo CUBE.

Návraty

VELKÝINT.

Funkce kombinuje seskupovací funkci pro několik sloupců do jednoho tím, že každý sloupec přiřazuje bit v bitovém vektoru. Je col1 reprezentován nejvyšším bitem pořadí. Bit je nastaven na hodnotu 1, pokud řádek vypočítá mezisoučty pro odpovídající sloupec.

Zadání argumentu není ekvivalentní k určení všech sloupců uvedených v GROUPING SETsadě , CUBEnebo ROLLUP.

Příklady

> 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