Kom igångKom igång gratis

Hämta värden från nästa rad

Med funktionen LEAD() kan du hämta data från en efterföljande rad i samma fråga, utan att använda GROUP BY. Det gör det enkelt att jämföra värden i en sorterad lista.

Syntaxen ser ut så här: LEAD(numeric_expression) OVER ([PARTITION BY column] ORDER BY column)

I den här övningen får du öva på att jämföra värden från den aktuella raden med värden från nästa rad.

Du väljer information om väljare från Frankrike och sorterar resultaten efter totalt antal röster i stigande ordning. Målet är att analysera hur antalet röster från varje väljare förhåller sig till antalet röster registrerade för nästa person i listan.

Den här övningen är en del av kursen

Funktioner för datamanipulering i SQL Server

Visa kurs

Övningsinstruktioner

  • Skapa en ny kolumn som visar antalet röster registrerade för nästa person i listan.
  • Skapa en ny kolumn med skillnaden mellan den aktuella väljarens total_votes och rösterna för nästa person.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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;
Redigera och kör kod