НачатьНачать бесплатно

Секунды есть или нет?

В видео вы видели, как 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
Редактировать и запускать код