Secondi o niente secondi?
Nel video hai visto come DATEDIFF() può essere usato per calcolare la durata del viaggio trovando la differenza tra ora di inizio e di fine, ma come fai a sapere se l'insieme di dati include i secondi nelle transazioni?
Qui userai DATEPART() per vedere quante transazioni hanno i secondi maggiori di zero e quante li hanno uguali a zero. In questo modo puoi valutare se la quantità è appropriata. L'istruzione CASE separerà l'insieme di dati in due categorie.
Questo esercizio fa parte del corso
Scrivere funzioni e stored procedure in SQL Server
Istruzioni dell'esercizio
- Completa il primo
CASEusandoDATEPART()per valutare la parte di dataSECONDdiStartDate. - Completa allo stesso modo il secondo
CASEnella clausolaGROUP BY.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
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