Teilen über


Gruppierung

Aggregatfunktion: Gibt an, ob eine angegebene Spalte in einer GROUP BY Liste aggregiert ist oder nicht, gibt 1 für aggregierte oder 0 zurück, die nicht im Resultset aggregiert wurden.

Syntax

from pyspark.sql import functions as sf

sf.grouping(col)

Die Parameter

Parameter Typ Description
col pyspark.sql.Column oder str Spalte, um zu überprüfen, ob sie aggregiert wird.

Rückkehr

pyspark.sql.Column: gibt "1" für "aggregiert" oder "0" für nicht aggregierte Ergebnisse im Resultset zurück.

Examples

Beispiel 1: Überprüfen des Gruppierungsstatus im Cubevorgang

from pyspark.sql import functions as sf
df = spark.createDataFrame([("Alice", 2), ("Bob", 5)], ("name", "age"))
df.cube("name").agg(sf.grouping("name"), sf.sum("age")).orderBy("name").show()
+-----+--------------+--------+
| name|grouping(name)|sum(age)|
+-----+--------------+--------+
| NULL|             1|       7|
|Alice|             0|       2|
|  Bob|             0|       5|
+-----+--------------+--------+