sql >> Database >  >> RDS >> Mysql

GTFS-query om alle vertrek- en aankomsttijden tussen twee haltenamen weer te geven

eenvoudig gegevens samenvoegen, deelnemen aan stops tweemaal voor start- en eindstop en deelname aan stop_times tweemaal voor start- en eindstop_times,
het enige waar ik niet zeker van ben, is waar direction_id komt van.
probeer de onderstaande zoekopdracht.
Aan het einde van de zoekopdracht kunt u start_s.stop_id opgeven en end_s.stop_id die de twee haltes vertegenwoordigt waarover u gegevens opvraagt.

SELECT t.trip_id,
       start_s.stop_name as departure_stop,
       start_st.departure_time,
       direction_id as direction,
       end_s.stop_name as arrival_stop,
       end_st.arrival_time
FROM
trips t INNER JOIN calendar c ON t.service_id = c.service_id
        INNER JOIN routes r ON t.route_id = r.route_id
        INNER JOIN stop_times start_st ON t.trip_id = start_st.trip_id
        INNER JOIN stops start_s ON start_st.stop_id = start_s.stop_id
        INNER JOIN stop_times end_st ON t.trip_id = end_st.trip_id
        INNER JOIN stops end_s ON end_st.stop_id = end_s.stop_id
WHERE c.monday = 1 
  AND direction_id = 1
  AND start_st.departure_time > "00:00:00" AND start_st.departure_time < "23:59:59" 
  AND r.route_id = 1
  AND start_s.stop_id = 42
  AND end_s.stop_id = 1

Ik heb geprobeerd een GTFS-structuurvoorbeeld op te zoeken van deze link en ik kon niets vinden op direction_id

Stopnamen opgeven in plaats van AND start_s.stop_id = 42 AND end_s.stop_id = 1
gebruik gewoon AND start_s.stop_name = 'Garrison' AND end_s.stop_name = 'Grand Central'




  1. Welke kolommen zijn over het algemeen goede indexen?

  2. Kan mysqlclient niet installeren op centos

  3. SQL Server 2017 Stap voor stap installatie -1

  4. mysql VERKLAREN TERWIJL buiten de opgeslagen procedure hoe?