Kom igångKom igång gratis

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

Visa kurs

Övningsinstruktioner

  • Skapa en funktion CountTripAvgDuration() som returnerar en tabellvariabel med namnet @DailyTripStats.
  • Deklarera indataparametrarna @Month och @Year.
  • Infoga frågeresultaten i tabellvariabeln @DailyTripStats.
  • Använd CAST för att markera och gruppera efter StartDate som datatypen date.

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
Redigera och kör kod