mean funkcja agregacji

Dotyczy:zaznacz pole wyboru oznaczone jako yes Databricks SQL check oznaczone tak Databricks Runtime

Zwraca średnią obliczoną z wartości grupy. Ta funkcja jest synonimem średniej funkcji agregującej.

Składni

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

Tę funkcję można również wywołać jako funkcję okna przy użyciu klauzuli OVER .

Argumenty

  • expr: wyrażenie, które oblicza wartość liczbową.
  • cond: opcjonalne wyrażenie logiczne filtrujące wiersze używane do agregacji.

Zwraca

Typ wyniku jest obliczany jako argumenty:

  • DECIMAL(p, s): typ wyniku to a DECIMAL(p + 4, s + 4). Jeśli osiągnięto maksymalną dokładność dziesiętną, zwiększenie skali jest ograniczone, aby uniknąć utraty znaczących cyfr.
  • interwał miesiąca: wynik to INTERVAL YEAR TO MONTH.
  • interwał dnia: wynik to INTERVAL DAY TO SECOND.
  • We wszystkich pozostałych przypadkach wynik jest podwójny.

Wartości null w grupie są ignorowane. Jeśli grupa jest pusta lub składa się tylko z wartości null, wynik ma wartość NULL.

Jeśli DISTINCT zostanie określona średnia, zostanie obliczona po usunięciu duplikatów.

Ostrzeżenie

W środowisku Databricks Runtime, jeśli wartość spark.sql.ansi.enabled to false, przepływ zwraca NULL wartość zamiast błędu.

Przykłady

> SELECT mean(col) FROM VALUES (1), (2), (3) AS tab(col);
 2.0

> SELECT mean(DISTINCT col) FROM VALUES (1), (1), (2), (NULL) AS tab(col);
 1.5

> SELECT mean(col) FROM VALUES (1), (2), (NULL) AS tab(col);
 1.5