Freigeben über


median Aggregatfunktion

Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime 11.3 LTS und höher

Gibt den aus den Werten einer Gruppe berechneten Median zurück.

Syntax

median ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]

Diese Funktion kann auch mithilfe der -Klausel als OVER aufgerufen werden.

Argumente

  • expr: Ein Ausdruck, der in einen numerischen Wert oder in ein Intervall ausgewertet wird.
  • cond: Ein optionaler boolescher Ausdruck, der die Zeilen filtern, die für die Aggregation verwendet werden.

Rückgabe

Im Folgenden wird erläutert, wie die Ergebnistypen berechnet werden:

  • Jahres-/Monats-Intervall: Das Ergebnis ist ein INTERVAL YEAR TO MONTH-Wert.
  • Tageszeitintervall: Das Ergebnis ist ein INTERVAL DAY TO SECOND-Wert.
  • In allen anderen Fällen ist das Ergebnis ein DOUBLE.

NULL-Werte innerhalb der Gruppe werden ignoriert. Wenn eine Gruppe leer ist oder nur aus NULL-Werten besteht, ist das Ergebnis NULL.

Wenn DISTINCT angegeben ist, werden Duplikate entfernt und der Median wird berechnet.

Diese Funktion ist ein Synonym für percentile_cont(0.5) WITHIN GROUP (ORDER BY expr).

Beispiele

> SELECT median(col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
 2

> SELECT median(DISTINCT col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
 2.5

> SELECT median(col) FROM VALUES (INTERVAL '1' YEAR), (INTERVAL '2' YEAR) AS tab(col);
 1-6