Hitung waktu kedatangan dalam menit
Sebagai pengembang berbasis data, Anda mungkin perlu membuat informasi lebih mudah diakses oleh pengguna.
Tabel train_schedule menyediakan waktu kedatangan dan nama stasiun untuk dua jalur kereta. Ini didasarkan pada data yang diperoleh untuk jalur kereta komuter yang bepergian antara San Francisco dan kota-kota di sebelah selatannya.
Anda adalah bagian dari tim yang mengembangkan aplikasi untuk membuat informasi jadwal kereta lebih bermanfaat bagi para komuter. Salah satu fitur yang diminta untuk aplikasi ini adalah opsi untuk melihat sekilas berapa lama waktu yang dibutuhkan untuk bepergian dari pemberhentian pertama di jalur tersebut ke pemberhentian-pemberhentian berikutnya.
Latihan ini adalah bagian dari kursus
Analisis Deret Waktu di PostgreSQL
Petunjuk latihan
- Dalam common table expression, ambil
arrival_timepertama untuk setiap jalur kereta, yang sesuai dengan waktu kedatangan di stasiun pertama pada jalur tersebut. - Dengan menggunakan
EXTRACT(), hitung selisih relatif waktu kedatangan setiap stasiun dibandingkan stasiun pertama pada jalur tersebut, diukur dalam menit bilangan bulat.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
-- 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;