ich möchte die Distanz zwischen zwei Postleitzahlen ermitteln. Dazu muss ich diese zunächst in Geo-Koordinaten umwandeln.
Dies wollte ich so machen:
in geodb_textdata die Zeile suchen mit dem Typ "Postleitzahl" (500300000) und wo text_val die gesuchte PLZ beinhaltet
mit loc_id dieser Zeile dann die zugehörige Zeile in geodb_coordinates nachschlagen
dort haben wir dann die Koordinate (lat/lon)
Wie auch immer, es sieht so aus, als ob es mehr als einen Eintrag für eine gegeben PLZ gibt. Auch wenn ich den loc_type auf "Ortschaften" einschränke, sind die PLZs nicht eindeutig.
Ich verstehe ja, dass es in großen Städten mehrere Lokationen mit der gleichen PLZ geben kann. Aber für meine Anwendung brauche ich eine eindeutige Koordinate pro PLZ (z. B. die "Mitte" der Stadt oder so).
Wie kann ich das aus der GeoDB ziehen?
Danke
Magnus
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Du könntest dir anhand der Koordinaten die Mitte von mehreren Postleitzahlen leicht selbst ausrechnen.
Prinzipiell bekommst du mit dieser Formel leicht und schnell den ungefähren Abstand zweier deutscher Orte (Breitengrad ca. 50°):
111.12math.sqrt( (lat1-lat2)(lat1-lat2) + (lon1-lon2)(lon1-lon2)0.4096 )
lat1,lon1 sind Breitengrad und Längengrad des 1. Ortes, lat2,lon2 die des zweiten Ortes.
Last edit: Martin Schlatter 2017-11-21
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
ich möchte die Distanz zwischen zwei Postleitzahlen ermitteln. Dazu muss ich diese zunächst in Geo-Koordinaten umwandeln.
Dies wollte ich so machen:
Wie auch immer, es sieht so aus, als ob es mehr als einen Eintrag für eine gegeben PLZ gibt. Auch wenn ich den loc_type auf "Ortschaften" einschränke, sind die PLZs nicht eindeutig.
Ich verstehe ja, dass es in großen Städten mehrere Lokationen mit der gleichen PLZ geben kann. Aber für meine Anwendung brauche ich eine eindeutige Koordinate pro PLZ (z. B. die "Mitte" der Stadt oder so).
Wie kann ich das aus der GeoDB ziehen?
Danke
Magnus
Du könntest dir anhand der Koordinaten die Mitte von mehreren Postleitzahlen leicht selbst ausrechnen.
Prinzipiell bekommst du mit dieser Formel leicht und schnell den ungefähren Abstand zweier deutscher Orte (Breitengrad ca. 50°):
111.12math.sqrt( (lat1-lat2)(lat1-lat2) + (lon1-lon2)(lon1-lon2)0.4096 )
lat1,lon1 sind Breitengrad und Längengrad des 1. Ortes, lat2,lon2 die des zweiten Ortes.
Last edit: Martin Schlatter 2017-11-21