CommencerCommencez gratuitement

TVF à plusieurs instructions

Créez une table-valued function à plusieurs instructions qui renvoie le nombre de trajets et la durée moyenne des courses pour chaque jour, en fonction du mois et de l’année passés en paramètres.

Cet exercice fait partie du cours

<cours>Écrire des fonctions et des procédures stockées dans SQL Server</cours>
Voir le cours

Instructions de l’exercice

  • Créez une fonction CountTripAvgDuration() qui renvoie une variable table nommée @DailyTripStats.
  • Déclarez les paramètres d’entrée @Month et @Year.
  • Insérez les résultats de la requête dans la variable table @DailyTripStats.
  • Utilisez CAST pour sélectionner et regrouper StartDate en tant que type de données date.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- 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
Modifier et exécuter le code