Sdílet prostřednictvím


percentile agregační funkce

Platí pro:zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime

Vrátí přesnou percentilovou expr hodnotu v zadané percentage skupině.

Syntaxe

percentile ( [ALL | DISTINCT] expr, percentage [, frequency] ) [FILTER ( WHERE cond ) ]

Tuto funkci lze také vyvolat jako funkci okna pomocí OVER klauzule.

Argumenty

  • expr: Výraz, který se vyhodnotí jako číselný.
  • percentage: Číselný výraz mezi 0 a 1 nebo POLEm číselných výrazů, z nichž každý je mezi 0 a 1.
  • frequency: Volitelný celočíselný literál větší než 0.
  • cond: Volitelný logický výraz filtrující řádky použité pro agregaci.

Návraty

DOUBLE je-li percentage číselná, nebo POLE TYPU DOUBLE, pokud percentage je POLE.

Frekvence popisuje, kolikrát expr se musí počítat. Frekvence 10 pro určitou hodnotu je ekvivalentní této hodnotě, která se v okně zobrazuje 10krát s frekvencí 1. Výchozí frekvence je 1.

Pokud DISTINCT je zadána funkce funguje pouze s jedinečnou sadou expr hodnot.

Příklady

> SELECT percentile(col, 0.3) FROM VALUES (0), (10), (10) AS tab(col);
 6.0

> SELECT percentile(DISTINCT col, 0.3) FROM VALUES (0), (10), (10) AS tab(col);
 3.0

> SELECT percentile(col, 0.3, freq) FROM VALUES (0, 1), (10, 2) AS tab(col, freq);
 6.0

> SELECT percentile(col, array(0.25, 0.75)) FROM VALUES (0), (10) AS tab(col);
 [2.5,7.5]