Секунды есть или нет?
В видео вы видели, как DATEDIFF() позволяет вычислить время поездки, находя разницу между временем начала и окончания. Но как убедиться, что в наборе данных транзакции содержат секунды?
Здесь вы воспользуетесь функцией DATEPART(), чтобы определить, в скольких транзакциях секунды больше нуля, а в скольких равны нулю. Это поможет оценить, насколько такое соотношение приемлемо. Оператор CASE разделит набор данных на две категории.
Это упражнение является частью курса
Написание функций и хранимых процедур в SQL Server
Инструкции к упражнению
- Заполните первый оператор
CASE, используяDATEPART()для оценки части датыSECONDв полеStartDate. - Заполните второй оператор
CASEвGROUP BYаналогичным образом.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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