Hallo,
für ein Projekt brauche ich die Fahrpläne der öffentlichen Verkehrsmittel, bzw. die Linien mit deren Haltestellen von U-Bahn, S-Bahn, Tram und Bus von München.
Wie ist denn allgemein das Schema um an die Daten zu kommen?
Ich habe mir mit osm2pgsql eine Datenbank von Oberbayern erstellt, mit folgendem Befehl:
osm2pgsql -s C:\\Users\\***\\Downloads\\map\\oberbayern-latest.osm.bz2 -d osmMunich -U postgres -H localhost -P 5432 -S C:\\Users\\***\\Downloads\\Programme\\Cygwin\\packages\\osm2pgsql\\default.style --hstore
Nun mal ein Beispiel wie ich herangegangen bin mit der U-Bahn:
Erst mal habe ich mir die Master Relations herausgesucht:
SELECT way_off, rel_off, parts, members, tags FROM planet_osm_rels WHERE 'route_master' = ANY(tags) AND 'subway' = ANY(tags)
Danach habe ich davon eine der Relation genommen:
SELECT * FROM planet_osm_rels WHERE id = 3328723
Nun über die members habe ich alle Nodes genommen, welche danach einen stop haben
SELECT * FROM planet_osm_nodes WHERE id = 248796128
Nun gibt es das Problem, das nicht alle Nodes mit Namen in den tags versehen sind.
Dann habe ich mir gedacht, dass ich mal in den osm_point danach suche:
SELECT * FROM planet_osm_point WHERE osm_id = 248796128
Doch da gibt es auch meistens keinen Namen.
Wie muss ich denn vorgehen, um von einer Linie alle Haltestellen-Namen zu bekommen?