Многооператорная 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