Hallo,

ich habe das ausprobiert. Die Tabelle points habe ich um lat und lon ergänzt. Die Sequenz

set lon = st_x(st_transform(wkb_geometry,4326)), lat = st_y(st_transform(wkb_geometry,4326)); ergibt folgende Fehlermeldung

ERROR:  syntax error at or near "("
LINE 2: lon = st_x(st_transform(wkb_geometry,4326)),

ähnliche Sequenzen aus anderen Quellen scheitern an der gleichen Stelle. Nach einigem suchen habe ich diese Zeile zusammengestellt:

SELECT wkb_geometry, ST_X(wkb_geometry), ST_Y(wkb_geometry) FROM points; Das Ergebnis ist:

wkb_geometry | st_x | st_y
----------------------------------------------+------------------+--------------------------------+--------------------------
\x01010000000c5a39341b171641ebb85d5297c05541 | 361926.80100003 | 5702237.28697036 \x010100000001f3ccaa1b941d414d4afe46a6245541 | 484614.916797444 | 5542553.10927064 \x010100000099bcc6b084941d4144decf8d9f245541 | 484641.17263312 | 5542526.21581227 \x01010000004240488d1d941d41e4d1e7ee9a245541 | 484615.387970928 | 5542507.73289916 \x0101000000d0d10999c7941d415dd9b0b399245541 | 484657.899451521 | 5542502.80766901 \x01010000001228a0f863951d418f7f850592245541 | 484696.992798449 | 5542472.08627309 \x010100000035e14f7a8f951d417a021e598f245541 | 484707.869445342 | 5542461.39245665

Wie muss ich das nun bewerten. Es sieht aus wie WGS 84 /4326. Wenn es kein Zufall ist stecken alle Informationen in der wkb Zeile. Wenn die st_x und die st_y Spalte reale Koordinaten sind, ist das Problem gelöst. Aber wie das immer so ist, ergeben sich gleich neue Fragen. Die SQL Abfrage aus QGIS:

"other_tags" like '%wind%' AND "other_tags" like '%generator%'

möchte ich gleich in der Datenbank als SELECT stellen. Wie kann ich das formulieren?

Das Ergebnis der Abfrage möchte ich als neue Tabelle in die DB osm z.B. als "wind" einfügen. Eine SELECT Abfrage kann man auch als Shape exportieren.

Gruß

Jörg

Am 21.11.2018 um 17:21 schrieb Claas QGIS.de:
Hallo Jörg,

mit folgender Vorgehensweise gelangst Du zum Ziel:


-- Neue Spalten anlegen

alter table points    -- in der Tabelle points
add column lon double,  -- Spalte lon im Datentyp Fließkomma anlegen
add column lat double   -- Spalte lat im Datentyp Fließkomma anlegen
;

-- Tabelle Points updaten
-- st_transform transformiert die Geometrie Zurück nach WGS 84
-- st_x und st_y lesen die gewünschten Koordinaten auus der Geometrie

update points
set
lon = st_x(st_transform(wkb_geometry,4326)),
lat = st_y(st_transform(wkb_geometry,4326))
;

--
Zu ogr2ogr
das Werkzeug ist meiner Meinung sehr gut zum OSM-Import geeignet.
Mittels des Schaalters -sql lassen sich auch schon beim Import Inhalte auswählen.

Viele Grüße,

Claas



--
....................................................................
FOSSGIS 2019, die Konferenz für Open Source GIS mit OpenData und
OpenStreetMap in Dresden!
13.-16. März 2019 an der HTW Dresden
https://fossgis-konferenz.de/2019/

FOSSGIS Veranstaltungen 2018
https://www.fossgis.de/node/306

FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem
GIS-Bereich und Freier Geodaten!
https://www.fossgis.de/             https://twitter.com/fossgis_eV

____________________________________________________________________
FOSSGIS-Talk-Liste mailing list
FOSSGIS-Talk-Liste@fossgis.de
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste

Antwort per Email an