LAG y LEAD en SQL
LAG mira una fila atrás y LEAD una adelante — tasas de crecimiento sin self join.
SELECT
month,
revenue,
LAG(revenue, 1, 0) OVER (
ORDER BY month
) AS previous_month,
revenue - LAG(revenue, 1, 0) OVER (
ORDER BY month
) AS change
FROM monthly_revenue
ORDER BY month;
Cómo funciona
- El segundo argumento es el desplazamiento; el tercero, un valor por defecto.
- Restar la fila anterior da el cambio periodo a periodo.
- El orden dentro de la ventana define qué significa anterior.
Palabras clave y builtins usados aquí
ASBYFROMORDERSELECTmonth
El intento, en números
- Líneas
- 11
- Caracteres a escribir
- 184
- Tokens
- 46
- Ritmo de tres estrellas
- 95 tpm
Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 29 segundos.
Paso 4 de 9 en Funciones de ventana; paso 10 de 24 en Analítica y reportes.