ComeçarComece de graça

Calcular tempo de chegada em minutos

Como desenvolvedor orientado por dados, você pode precisar tornar as informações mais acessíveis para os usuários.

A tabela train_schedule fornece horários de chegada e nomes das estações para duas linhas de trem. Ela se baseia em dados obtidos de uma linha de trem metropolitano que vai de San Francisco para cidades ao sul.

Você faz parte de uma equipe que está desenvolvendo um app para tornar as informações do cronograma dos trens mais úteis para os passageiros. Um recurso solicitado para o app é a opção de ver, de relance, quanto tempo leva para viajar da primeira parada da linha até as paradas seguintes.

Este exercício faz parte do curso

Análise de Séries Temporais no PostgreSQL

Ver curso

Instruções do exercício

  • Na expressão de tabela comum, obtenha o primeiro arrival_time de cada linha de trem, correspondente ao horário de chegada na primeira estação da linha.
  • Usando EXTRACT(), calcule a diferença relativa entre o horário de chegada de cada estação e o da primeira estação da linha, medida em minutos inteiros.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

-- 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;
Editar e executar o código