Mehr

Erstellen von Spalten in PostGIS mit osm2pgsql hstore-Tags

Erstellen von Spalten in PostGIS mit osm2pgsql hstore-Tags


Obwohl ich das Gefühl habe, dass dies auf eine Datenbankfrage zurückzuführen ist, fühlt es sich GIS-bezogen genug an, dass ich mich wohl fühle, es hier zu posten. Ich nehme es aber gerne woanders hin, wenn es dort hingehört!

Ich habe die mühsame Reise begonnen, OSM-Daten zu zerlegen, um in einem für mich nützlichen RDBMS-Format zu arbeiten. Eines der Hauptprobleme, auf das ich stoße, ist der Datentyp hstore. Obwohl es sehr nützlich ist, ein extrem großes Wörterbuch von Werten zu führen, sind sie meiner Erfahrung nach schwer zu "erfassen". Insbesondere erstellt das osm2pgsql-ToolAdresse: Wohnungen,Adresse:Hausnummer, undAdresse: InterpolationFelder, lässt aber einige für mich offensichtliche aus, wie Ort, Postleitzahl und Straße. Ich möchte diese Daten analysieren, um neue Spalten damit zu füllen. Welche Methoden würden Sie für den Zugriff auf solche Daten empfehlen?

Vielen Dank


Sie können die gewünschten hstore-Schlüssel/Wert-Daten in neue Spalten übertragen:
1-Erstellen Sie die gewünschten Spalten (z. B. Adresse, Stadt, Schlüssel1, Schlüssel2, Schlüsseln)
2-Lauf:

UPDATE-Tabelle SET address=hstorecolumn->'address', city=hstorecolumn->'city', key1=hstorecolumn->'key1', key2=hstorecolumn->'key2', keyn=hstorecolumn->'keyn';

Oder man gewöhnt sich einfach an hstore, es funktioniert ganz gut und ich habe so viele gute Ergebnisse damit, dass ich IMO sagen kann "hstore hat mein Leben verändert". lol

BEARBEITEN:
Ein Beispiel für die Verwendung von hstore:
AUSWÄHLEN
streetdatatable.hstoredatacolumn -> 'Adresse',
streetdatatable.hstoredatacolumn -> 'Stadt'
VON einem Schema. Straßendatentabelle

Es zeigt Ihnen alle Adress- und Städtewerte an.


Schau das Video: OpenStreetMap + PostgreSQLHow to load OpenStreetMap data into a PostgreSQL Database