Megosztás a következőn keresztül:


percent_rank rangsorolási ablakfüggvény

A következőkre vonatkozik: jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

Kiszámítja egy érték százalékos rangsorolását a partíción belül.

Syntax

percent_rank()

Argumentumok

A függvény nem vesz fel argumentumokat

Válaszok

DUPLA.

A függvény az ablakban lévő rangként van definiálva, mínusz egy osztva az ablakban lévő sorok számával mínusz 1. Ha az ablakban csak egy sor van, a rangsor 0.

Kifejezésként a szemantika a következőképpen fejezhető ki:

nvl((rank() OVER(PARTITION BY p ORDER BY o) - 1) / nullif(count(1) OVER(PARTITION BY p) -1), 0), 0)

Ez a függvény hasonló, de nem ugyanaz, mint cume_dist elemzési ablakfüggvény.

Az ORDER BY záradékot meg kell adnia az ablak specifikációjában.

Példák

> SELECT a, b, percent_rank(b) OVER (PARTITION BY a ORDER BY b)
    FROM VALUES ('A1', 2), ('A1', 1), ('A1', 3), ('A1', 6), ('A1', 7), ('A1', 7), ('A2', 3), ('A1', 1) tab(a, b)
 A1 1  0.0
 A1 1  0.0
 A1 2  0.3333333333333333
 A1 3  0.5
 A1 6  0.6666666666666666
 A1 7  0.8333333333333334
 A1 7  0.8333333333333334
 A2 3  0.0