typestar

Dónde cae una fila en la distribución en SQL

No el rango sino la fracción: ¿cuánta tabla queda detrás de esta fila?

SELECT
    name,
    score,
    ROUND(PERCENT_RANK() OVER by_score, 3) AS pct_below,
    ROUND(CUME_DIST() OVER by_score, 3) AS cumulative,
    NTILE(4) OVER by_score AS quartile
FROM players
WINDOW by_score AS (
    ORDER BY score
);

Cómo funciona

  1. PERCENT_RANK corre de 0 a 1 y responde qué proporción queda debajo.
  2. CUME_DIST incluye la fila actual, así que nunca devuelve 0.
  3. NTILE(4) es la misma idea redondeada en cuatro segmentos.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
10
Caracteres a escribir
210
Tokens
50
Ritmo de tres estrellas
95 tpm

Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 32 segundos.

Escribe este fragmento

Paso 9 de 9 en Funciones de ventana; paso 15 de 24 en Analítica y reportes.

← Anterior Siguiente →