BaşlayınÜcretsiz Başlayın

Ay bazında (aydan aya) karşılaştırma

Ayları karşılaştırmak için aşağıdaki window fonksiyonlarından birini kullanman gerekiyor:

  • LAG(value, offset): rapordaki geçerli satırdan offset kadar önceki bir satırın değerini döndürür.
  • LEAD(value, offset): rapordaki geçerli satırdan offset kadar sonraki bir satırın değerini döndürür.

Amacın, her ülkenin aydan aya görüntülenme sayılarını gösteren bir rapor oluşturmak. Birkaç ipucu:

  • Tarihleri aylara bölümlendirmen gerekecek. Bunu yapmak için DATE_PART() fonksiyonunu kullanabilirsin.
  • yüzde değişimi şu formülle hesaplayabilirsin: (value)/(previous_value) - 1.
  • LAG() veya LEAD() fonksiyonlarında offset değeri belirtilmezse varsayılan olarak 1 alınır.

Tablo Haziran ortasında bittiği için sorgu, verileri Mayıs sonuna kadar içerecek şekilde ayarlanmıştır.

Bu egzersiz

SQL ile Raporlama

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • web_data tablosundan country_id alanını çek ve DATE_PART() fonksiyonunu kullanarak month alanını oluştur.
  • Ay içindeki toplam görüntülenmeleri çeken month_views alanını oluştur.
  • İlgili ülke için geçen aydaki toplam görüntülenmeleri çeken previous_month_views alanını oluştur.
  • İlgili ülke için bu ayın, geçen aya göre yüzde değişimini hesaplayan perc_change alanını oluştur; negatif değer görüntülenmelerde düşüşü, pozitif değer ise artışı ifade eder.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

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 ____;
Kodu Düzenle ve Çalıştır