Saltar al contenido

El escalón de arriba

Enunciado

Recursos humanos publica la lista de salarios, y cada quien busca lo mismo: ¿cuánto me falta para alcanzar a los que ganan más que yo?

Muestra el nombre, el salario y lo que le falta a cada persona para llegar al salario que sigue por encima del suyo, en ese orden. Quien gana lo mismo que otra persona no la tiene por encima: a las dos les falta lo mismo. A quien gana más que nadie, la casilla le queda vacía.

Ordena del salario más alto al más bajo y, entre iguales, por nombre.

Lo que tiene que devolver

Estas filas, en este orden

nombresalariole_falta
Carmen5200NULL
Paula41001100
Marco3800300
Lidia3000800
Samuel3000800
Fabio2600400
Greta2400200
Nadia2100300
Rita1900200

Es lo que sale con los datos de la base de práctica del reto. Los nombres de las columnas no cuentan, las tuyas pueden llamarse como quieras: cuenta cuántas son y en qué orden van. Además de esta, el reto tiene pruebas ocultas con otros datos, que se revelan al enviar tu solución.

Empiezas con esto

SQL

SELECT nombre, salario,
  LAG(salario) OVER (
    ORDER BY salario DESC, id
  ) AS arriba
FROM empleados;
Resolver este reto

Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.

Más retos de O(n²)

Ver todos los retos →