Haftalık düzeyde downsample et
Yönetim, insanların 2020 yılında spayı ne kadar iyi kullandığını görmek istiyor. Sonuçları haftalık olarak görmek; olanak kullanımının toplam dakika sayısını, katılımcı sayısını ve o hafta en büyük müşteri ID'sine sahip müşteriyi inceleyerek yeni müşterilerin gelip gelmediğini anlamak istiyorlar.
SQL Server'daki fonksiyonlarla veriyi bu şekilde sabit bir düzeye downsample edebiliriz. Bu fonksiyonlardan biri DATEPART()'tır.
Bu egzersiz, kursun bir parçasıdır
SQL Server'da Zaman Serisi Analizi
Egzersiz talimatları
- Gündüz spa ziyaret verisini
DATEPART()fonksiyonunu kullanarak haftalık düzeye downsample et. - Verilen bir hafta için en büyük müşteri ID'sine sahip müşteriyi bul.
SELECTifadesindeki (örneğinAS Weekgibi takma adlar olmadan) toplulaştırılmamış tüm değerleriGROUP BYifadesine ekle.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
SELECT
-- Downsample to a weekly grain
___(___, dsv.CustomerVisitStart) AS Week,
SUM(dsv.AmenityUseInMinutes) AS AmenityUseInMinutes,
-- Find the customer with the largest customer ID for that week
___(dsv.___) AS HighestCustomerID,
COUNT(1) AS NumberOfAttendees
FROM dbo.DaySpaVisit dsv
WHERE
dsv.CustomerVisitStart >= '2020-01-01'
AND dsv.CustomerVisitStart < '2021-01-01'
GROUP BY
-- When we use aggregation functions like SUM or COUNT,
-- we need to GROUP BY the non-aggregated columns
___(___, dsv.CustomerVisitStart)
ORDER BY
Week;