Kom igångKom igång gratis

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

Visa kurs

Övningsinstruktioner

  • Fyll i den första CASE-satsen och använd DATEPART() för att utvärdera datumdelen SECOND i StartDate.
  • Fyll i den andra CASE-satsen i GROUP BY på 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
Redigera och kör kod