私はフィラデルフィアのトランジット データをいじっており、gtfs データを格納する sqlite データベースを持っています。特定の停留所での出発時間を検索する次のクエリがあります。
SELECT "stop_time".departure_time FROM "stop_time"
INNER JOIN "trip" ON "trip".trip_id = "stop_time".trip_id
WHERE
(trip.route_id = '10726' )
-- AND (trip.service_id = '1')
AND (stop_time.stop_id = '220')
AND (time( stop_time.departure_time ) > time('08:30:45'))
AND (time( stop_time.departure_time ) < time('09:30:45'));
service_id を 1 に一致させる句は、現在コメント アウトされています。service_id を一致させずに、このままクエリを実行すると、2 秒かかります。service_id 句のコメントを外すと、30 かかります。route_id のトリップ テーブルを既に調べているので、その理由はわかりません。
何かご意見は?