डेली ग्रेन पर डाउनसैंपल करें
डेटा को उच्चतर ग्रेन पर रोल-अप करना एक सामान्य विश्लेषणात्मक कार्य है. हमारे पास विशेष टाइमस्टैम्प वाले डेटा हो सकते हैं और हमें समेकित (aggregated) परिणाम देखने की जरूरत होती है. SQL Server में, आपकी इच्छित ग्रेन के अनुसार कई तकनीकें उपलब्ध हैं.
इन अभ्यासों के लिए, हम एक काल्पनिक डे स्पा को देखेंगे. स्पा प्रबंधन ने 16 से 20 जून 2020 की अवधि के लिए संभावित नए ग्राहकों को कूपन भेजे और यह देखना चाहते हैं कि क्या इस कैंपेन से नई विज़िट्स बढ़ीं.
इस अभ्यास में, हम सबसे सरल डाउनसैंपलिंग तकनीकों में से एक देखेंगे: DATETIME2 या DATETIME डेटा टाइप को केवल तारीख और बिना समय वाले डेटा टाइप में बदलना: DATE टाइप.
यह अभ्यास पाठ्यक्रम का हिस्सा है
SQL Server में Time Series Analysis
अभ्यास निर्देश
- कस्टमर विज़िट के शुरू होने के समय को डेली ग्रेन पर डाउनसैंपल करें और परिणामों को एग्रीगेट करें.
- SELECT क्लॉज़ में मौजूद किसी भी non-aggregated वैल्यू को (लेकिन
AS Dayजैसे उपनाम/alias के बिना) GROUP BY क्लॉज़ में भरें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
SELECT
-- Downsample to a daily grain
-- Cast CustomerVisitStart as a date
___(dsv.CustomerVisitStart AS ___) AS Day,
SUM(dsv.AmenityUseInMinutes) AS AmenityUseInMinutes,
COUNT(1) AS NumberOfAttendees
FROM dbo.DaySpaVisit dsv
WHERE
dsv.CustomerVisitStart >= '2020-06-11'
AND dsv.CustomerVisitStart < '2020-06-23'
GROUP BY
-- When we use aggregation functions like SUM or COUNT,
-- we need to GROUP BY the non-aggregated columns
___(dsv.CustomerVisitStart AS ___)
ORDER BY
Day;