Sekunder eller inga sekunder?
I videon såg du hur DATEDIFF() kan användas för att beräkna resetiden genom att ta skillnaden mellan start- och sluttid – men hur vet du om datamängden innehåller sekunder i transaktionerna?
Här använder du DATEPART() för att se hur många transaktioner som har sekunder större än noll och hur många som har dem lika med noll. Sedan kan du bedöma om det är en rimlig fördelning. CASE-satsen delar in datamängden i två kategorier.
Den här övningen är en del av kursen
Skriva funktioner och lagrade procedurer i SQL Server
Övningsinstruktioner
- Fyll i den första
CASE-satsen och användDATEPART()för att utvärdera datumdelenSECONDiStartDate. - Fyll i den andra
CASE-satsen iGROUP BYpå samma sätt.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
SELECT
-- Count the number of IDs
COUNT(ID) AS Count,
-- Use DATEPART() to evaluate the SECOND part of StartDate
"StartDate" = CASE WHEN ___(___, ___) = 0 THEN 'SECONDS = 0'
WHEN ___(___, ___) > 0 THEN 'SECONDS > 0' END
FROM CapitalBikeShare
GROUP BY
-- Use DATEPART() to Group By the CASE statement
CASE WHEN ___(___, ___) = 0 THEN 'SECONDS = 0'
WHEN ___(___, ___) > 0 THEN 'SECONDS > 0' END