Seconden of geen seconden?
In de video zag je hoe DATEDIFF() kan worden gebruikt om de ritduur te berekenen door het verschil tussen Start- en Eindtijd te nemen. Maar hoe weet je of de gegevensset seconden bevat in de transacties?
Hier gebruik je DATEPART() om te zien bij hoeveel transacties de seconden groter zijn dan nul en bij hoeveel ze gelijk zijn aan nul. Daarna kun je beoordelen of dit een passend aandeel is. De CASE-instructie verdeelt de gegevensset in twee categorieën.
Deze oefening maakt deel uit van de cursus
Functies en opgeslagen procedures schrijven in SQL Server
Oefeninstructies
- Maak de eerste
CASE-instructie af en gebruikDATEPART()om het datumonderdeelSECONDvanStartDatete evalueren. - Maak de tweede
CASE-instructie in deGROUP BYop dezelfde manier af.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
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