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

Önceki ve sonraki dönemleri görmek

LAG() ve LEAD() pencere işlevleri, sırasıyla zamanda geriye veya ileriye bakmamızı sağlar. Böylece dönemden döneme verileri tek ve kolay bir sorguda karşılaştırabiliriz.

Bu egzersizde, 2019 Temmuz ayında, özellikle 2 Temmuz'da başlayıp 31 Temmuz'da biten dönemde, olay türleri 1 ve 2 için günlük güvenlik olayı sayılarını karşılaştırmak istiyoruz.

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

SQL Server'da Zaman Serisi Analizi

Kursa Göz Atın

Egzersiz talimatları

  • Olay türü kimliğine göre bölümlenmiş ve olay tarihine göre sıralanmış şekilde, bir önceki günün olay sayısını döndürecek pencere işlevini doldur.
  • Olay türü kimliğine göre bölümlenmiş ve olay tarihine göre sıralanmış şekilde, bir sonraki günün olay sayısını döndürecek pencere işlevini doldur.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

SELECT
	ir.IncidentDate,
	ir.IncidentTypeID,
    -- Get the prior day's number of incidents
	___(ir.___, ___) OVER (
      	-- Partition by incident type ID
		PARTITION BY ir.___
      	-- Order by incident date
		ORDER BY ir.___
	) AS PriorDayIncidents,
	ir.NumberOfIncidents AS CurrentDayIncidents,
    -- Get the next day's number of incidents
	___(ir.___, ___) OVER (
      	-- Partition by incident type ID
		PARTITION BY ir.___
      	-- Order by incident date
		ORDER BY ir.___
	) AS NextDayIncidents
FROM dbo.IncidentRollup ir
WHERE
	ir.IncidentDate >= '2019-07-02'
	AND ir.IncidentDate <= '2019-07-31'
	AND ir.IncidentTypeID IN (1, 2)
ORDER BY
	ir.IncidentTypeID,
	ir.IncidentDate;
Kodu Düzenle ve Çalıştır