median
funkcja agregacji
Dotyczy: Databricks SQL Databricks Runtime 11.3 LTS i nowsze
Zwraca medianę obliczaną na podstawie wartości grupy.
Składnia
median ( [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ą lub interwał.cond
: opcjonalne wyrażenie logiczne filtrujące wiersze używane do agregacji.
Zwraca
Poniżej wyjaśniono, jak są obliczane typy wyników:
- interwał miesiąca: wynik to
INTERVAL YEAR TO MONTH
. - Interwał 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 to NULL
.
Jeśli DISTINCT
zostanie określony, duplikaty zostaną usunięte, a mediana jest obliczana.
Ta funkcja jest synonimem percentile_cont (0.5) WITHIN GROUP (ORDER BY expr).
Przykłady
> SELECT median(col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
2.0
> 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