Aan de slagBegin gratis

Multi statement TVF

Maak een multi statement table-valued function die het aantal ritten en de gemiddelde ritduur per dag retourneert voor de maand- en jaarwaarden die als parameter worden meegegeven.

Deze oefening maakt deel uit van de cursus

Functies en opgeslagen procedures schrijven in SQL Server

Bekijk cursus

Oefeninstructies

  • Maak een functie CountTripAvgDuration() die een tabelvariabele met de naam @DailyTripStats retourneert.
  • Declareer invoerparameters @Month en @Year.
  • Voeg de queryresultaten in de tabelvariabele @DailyTripStats in.
  • Gebruik CAST om StartDate te selecteren en te groeperen als gegevenstype date.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

-- 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
Code bewerken en uitvoeren