多语句 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