Zacznij terazZacznij za darmo

Wieloinstrukcyjna TVF

Utwórz wieloinstrukcyjną funkcję zwracającą tabelę (multi statement TVF), która dla podanych parametrów miesiąca i roku zwraca liczbę przejazdów oraz średni czas trwania przejazdu dla każdego dnia.

To ćwiczenie jest częścią kursu

Funkcje i procedury składowane w SQL Server

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz funkcję CountTripAvgDuration(), która zwraca zmienną tabelaryczną o nazwie @DailyTripStats.
  • Zadeklaruj parametry wejściowe @Month i @Year.
  • Wstaw wyniki zapytania do zmiennej tabelarycznej @DailyTripStats.
  • Użyj CAST, aby wybrać kolumnę StartDate i pogrupować dane według niej jako typ danych date.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

-- 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
Edytuj i uruchom kod