Multi-statement TVF
Skapa en multi-statement tabellvärdesfunktion som returnerar antalet resor och genomsnittlig reseduration för varje dag, baserat på de månad- och årsvärden som skickas in som parametrar.
Den här övningen är en del av kursen
Skriva funktioner och lagrade procedurer i SQL Server
Övningsinstruktioner
- Skapa en funktion
CountTripAvgDuration()som returnerar en tabellvariabel med namnet@DailyTripStats. - Deklarera indataparametrarna
@Monthoch@Year. - Infoga frågeresultaten i tabellvariabeln
@DailyTripStats. - Använd
CASTför att markera och gruppera efterStartDatesom datatypendate.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
-- 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