НачатьНачать бесплатно

Вычислите время прибытия в минутах

Как разработчик, ориентированный на данные, вы можете столкнуться с необходимостью представить информацию в более удобном для пользователей виде.

Таблица train_schedule содержит время прибытия и названия станций для двух железнодорожных маршрутов. Данные получены для пригородного маршрута, следующего между Сан-Франциско и городами к югу от него.

Вы входите в команду, которая разрабатывает приложение для удобного отображения расписания поездов. Одна из запрошенных функций — возможность быстро узнать, сколько времени занимает поездка от первой станции маршрута до каждой последующей.

Это упражнение является частью курса

Анализ временных рядов в PostgreSQL

Посмотреть курс

Инструкции к упражнению

  • В обобщённом табличном выражении получите первое значение arrival_time для каждого маршрута — то есть время прибытия на первую станцию.
  • С помощью функции EXTRACT() вычислите разницу во времени прибытия каждой станции относительно первой станции маршрута, выраженную в целых минутах.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- 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;
Редактировать и запускать код