Nedsampla till veckokornighet
Ledningen vill se hur väl gästerna har utnyttjat spaet under 2020. De vill ha resultaten uppdelade per vecka och granska det totala antalet minuter som bekvämligheter använts, antalet besökare samt kunden med det högsta kund-ID:t den veckan – för att se om nya kunder tillkommer.
Vi kan använda funktioner i SQL Server för att nedsampla till en fast kornighet på det här sättet. En sådan funktion är DATEPART().
Den här övningen är en del av kursen
Tidsserieanalys i SQL Server
Övningsinstruktioner
- Nedsampla data från spabsöken till veckokornighet med hjälp av funktionen
DATEPART(). - Hitta kunden med det högsta kund-ID:t för en given vecka.
- Fyll i
GROUP BY-satsen med alla icke-aggregerade värden iSELECT-satsen (men utan alias somAS Week).
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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;