Udostępnij za pośrednictwem


mean funkcja agregacji

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

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

Składnia

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 daje w wyniku wartość liczbową.
  • cond: opcjonalne wyrażenie logiczne filtrujące wiersze używane do agregacji.

Zwraca

Typ wyniku jest obliczany na podstawie argumentów.

  • DECIMAL(p, s): typ wyniku to a DECIMAL(p + 4, s + 4). Jeśli osiągnięto maksymalną precyzję liczby dziesiętnej, zwiększenie skali jest ograniczone, aby uniknąć utraty znaczących cyfr.
  • interwał roku-miesiąca: wynik to INTERVAL YEAR TO MONTH.
  • Przedział czasowy w ciągu dnia: wynik to INTERVAL DAY TO SECOND.
  • We wszystkich innych przypadkach wynik jest podwójne.

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 określono średnią, jest obliczana po usunięciu duplikatów.

Ostrzeżenie

W środowisku Databricks Runtime, jeśli spark.sql.ansi.enabled jest false, przepełnienie zwraca NULL 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