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

Многооператорная TVF

Создайте многооператорную табличную функцию, которая возвращает количество поездок и среднюю продолжительность поездки для каждого дня на основе переданных значений параметров месяца и года.

Это упражнение является частью курса

Написание функций и хранимых процедур в SQL Server

Посмотреть курс

Инструкции к упражнению

  • Создайте функцию CountTripAvgDuration(), которая возвращает табличную переменную @DailyTripStats.
  • Объявите входные параметры @Month и @Year.
  • Вставьте результаты запроса в табличную переменную @DailyTripStats.
  • Используйте CAST, чтобы выбрать значение StartDate и сгруппировать данные по нему, приведя его к типу date.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- Create the function
CREATE FUNCTION ___ (___ CHAR(2), ___ CHAR(4))
-- Specify return variable
RETURNS ___ TABLE(
	TripDate	date,
	TripCount	int,
	AvgDuration	numeric)
AS
BEGIN
-- Insert query results into @DailyTripStats
___ ___
SELECT
    -- Cast StartDate as a date
	___(___ AS ___),
    COUNT(ID),
    AVG(Duration)
FROM CapitalBikeShare
WHERE
	DATEPART(month, StartDate) = @Month AND
    DATEPART(year, StartDate) = @Year
-- Group by StartDate as a date
GROUP BY ___(___ AS ___)
-- Return
___
END
Редактировать и запускать код