ComenzarEmpieza gratis

Acceder a valores de la siguiente fila

Con la función LEAD() puedes acceder a datos de una fila posterior en la misma consulta, sin usar la sentencia GROUP BY. Así podrás comparar fácilmente valores de una lista ordenada.

Esta es la sintaxis: LEAD(numeric_expression) OVER ([PARTITION BY column] ORDER BY column)

En este ejercicio te familiarizarás con la comparación de los valores de la fila actual con los de la fila siguiente.

Seleccionarás información sobre los votantes de Francia y ordenarás los resultados por votos totales en orden ascendente. El objetivo es analizar cómo se compara el número de votos de cada votante con el número de votos registrado para la siguiente persona de la lista.

Este ejercicio forma parte del curso

Funciones para manipular datos en SQL Server

Ver curso

Instrucciones del ejercicio

  • Crea una columna nueva que muestre el número de votos registrado para la siguiente persona de la lista.
  • Crea una columna nueva con la diferencia entre el total_votes del votante actual y los votos de la siguiente persona.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

SELECT 
	first_name,
	last_name,
	total_votes AS votes,
    -- Select the number of votes of the next voter
	___(___) OVER (___ total_votes) AS votes_next_voter,
    -- Calculate the difference between the number of votes
	LEAD(___) ___ (ORDER BY ___) - total_votes AS votes_diff
FROM voters
WHERE country = 'France'
ORDER BY total_votes;
Editar y ejecutar código