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

SUM() ile kümülatif toplamlar

Pencere fonksiyonlarının en güçlü kullanımlarından biri kümülatif toplamları hesaplamaktır: belirli bir zaman diliminde bir değerin sürekli artan toplamı. Burada, 2019 Temmuz ayında her tarih ve olay türü için kaç olay gerçekleştiğini ve ayrıca olay türüne göre toplam olay sayısının kümülatif artışını hesaplamak için bir pencere fonksiyonu kullanmak istiyoruz. Tek bir sorguda bu problemi çözmemize bir pencere fonksiyonu yardımcı olacak.

Bu egzersiz, kursun bir parçasıdır

SQL Server'da Zaman Serisi Analizi

Kursa Göz Atın

Egzersiz talimatları

  • Doğru pencere fonksiyonunu doldur.
  • Pencere fonksiyonunda PARTITION BY ifadesini doldur; olay türü kimliğine göre bölümlendir.
  • Pencere fonksiyonunda ORDER BY ifadesini doldur; olay tarihine göre (varsayılan, artan sırada) sırala.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

SELECT
	ir.IncidentDate,
	ir.IncidentTypeID,
	ir.NumberOfIncidents,
    -- Get the total number of incidents
	___(ir.NumberOfIncidents) OVER (
      	-- Do this for each incident type ID
		PARTITION BY ir.___
      	-- Sort by the incident date
		ORDER BY ir.___
	) AS NumberOfIncidents
FROM dbo.IncidentRollup ir
	INNER JOIN dbo.Calendar c
		ON ir.IncidentDate = c.Date
WHERE
	c.CalendarYear = 2019
	AND c.CalendarMonth = 7
	AND ir.IncidentTypeID IN (1, 2)
ORDER BY
	ir.IncidentTypeID,
	ir.IncidentDate;
Kodu Düzenle ve Çalıştır