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>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
@Monthet@Year. - Insérez les résultats de la requête dans la variable table
@DailyTripStats. - Utilisez
CASTpour sélectionner et regrouperStartDateen tant que type de donnéesdate.
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