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
Instruções do exercício
- Na expressão de tabela comum, obtenha o primeiro
arrival_timede 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;