Kom igångKom igång gratis

Månadsvis jämförelse

För att jämföra månader behöver du använda någon av följande fönsterfunktioner:

  • LAG(value, offset), som returnerar ett värde från offset antal rader före den aktuella raden i rapporten.
  • LEAD(value, offset), som returnerar ett värde från offset antal rader efter den aktuella raden i rapporten.

Målet är att bygga en rapport som visar varje lands månadsvis visningar. Några tips:

  • Du behöver dela in datum i månader. Det gör du med funktionen DATE_PART().
  • Du kan beräkna den procentuella förändringen med följande formel: (value)/(previous_value) - 1.
  • Om inget offset-värde anges i LAG() eller LEAD() används standardvärdet 1.

Eftersom tabellen slutar mitt i juni är frågan konfigurerad att bara inkludera data till och med slutet av maj.

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

Rapportering i SQL

Visa kurs

Övningsinstruktioner

  • Hämta country_id från web_data och använd en DATE_PART()-funktion för att skapa month.
  • Skapa month_views som summerar det totala antalet visningar inom månaden.
  • Skapa previous_month_views som hämtar det totala antalet visningar från föregående månad för respektive land.
  • Skapa fältet perc_change som beräknar den procentuella förändringen för den aktuella månaden jämfört med föregående månad för respektive land, där ett negativt värde innebär ett tapp i visningar och ett positivt värde innebär tillväxt.

Interaktiv övning med praktiskt arbete

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

SELECT
	-- Pull month and country_id
	____ AS month,
	____,
    -- Pull in current month views
    ____ AS month_views,
    -- Pull in last month views
    ____ AS previous_month_views,
    -- Calculate the percent change
    ____ AS perc_change
FROM ____
WHERE date <= '2018-05-31'
GROUP BY ____;
Redigera och kör kod