CommencezCommencez gratuitement

Calculer le temps d'arrivée en minutes

En tant que développeur axé sur les données, vous pouvez avoir à rendre l'information plus accessible pour les utilisateurs.

La table train_schedule fournit les heures d'arrivée et les noms des gares pour deux lignes de train. Ces données proviennent d'une ligne de train de banlieue qui circule entre San Francisco et des villes au sud.

Vous faites partie d'une équipe qui développe une application pour rendre l'horaire des trains plus utile aux navetteurs. Une des fonctions demandées est la possibilité de voir d'un coup d'œil le temps nécessaire pour aller du premier arrêt de la ligne aux arrêts suivants.

Cette activité fait partie du cours

Analyse de séries chronologiques dans PostgreSQL

Voir le cours

Instructions de l’exercice

  • Dans l'expression de table commune, récupérez la première arrival_time pour chaque ligne de train, ce qui correspond à l'heure d'arrivée à la première gare de la ligne.
  • À l'aide de EXTRACT(), calculez la différence relative entre l'heure d'arrivée de chaque gare et celle de la première gare de la ligne, en minutes entières.

Exercice interactif pratique

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

-- Get first arrival time for each line
WITH start_times AS
(
	SELECT train_id, ___ AS start_time
	FROM train_schedule
	___
)
SELECT
	train_id,
	station,
	arrival_time,
	-- Relative time difference from first station in minutes
	(___(___ (___))) 
    	___ AS total_minutes
FROM train_schedule JOIN start_times USING(train_id)
ORDER BY train_id, arrival_time;
Modifier et exécuter le code