Hallo,
ich habe aus MySQL Daten erhalten.
Diese haben zwei Spalten, einmal East und einmal north. Beides im WGS84.
Wie bekomme ich diese Daten in eine Geometrie-Spalte?
Karl
Hallo,
ich habe aus MySQL Daten erhalten.
Diese haben zwei Spalten, einmal East und einmal north. Beides im WGS84.
Wie bekomme ich diese Daten in eine Geometrie-Spalte?
Karl
update <geom_table> set the_geom = (select geomfromtext('POINT('||<EAST>||' '||<NORTH>||')',4326) from MySQL-Daten);
Grüssle Uwe
EDIT: So 4x editiert, wenn immer noch net stimmt mußt du selber suchen
funktioniert. danke!
Bei einer Zeile.
Wenn ich alles importiert habe kommt dann diese Meldung:
_FEHLER: als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile
_
bzw._ERROR: more than one row returned by a subquery used as an expression
_
Hm.
Gehen mehrere Zeilen nur über php?
Mit einem
update orte set the_geom = (select geomfromtext('POINT('||east||' '||north||')',4326)
from orte WHERE poi_title = 'Schloss Kapfenburg')
erhalten alle die Geometrie von Schloss Kapfenburg.
Naja, mit deiner Syntax schreibt er überall die Koordinaten von Schloß Kapfenburg rein. Wenn du den where-Teil aus der Klammer nimmst, aktualisiert er nur Schloß Kapfenburg und wenn du ihn weglässt, alle.
Gruß Uwe
Dann kommt aber wieder diese Meldung:
FEHLER: als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile
Sorry, mein Fehler, das subselect hat mich verwirrt .
Brauchst du überhaupt ein Subselect? x, y und Geometrie stehen doch in einer Row einer Tabelle, oder? Andernfalls(Koordinaten+Geomterie in getrennten Tabellen) must du im Subselect die Felder so in Beziehung setzen, das nur ein Datensatz geliefert wird.
update public.geom_update set
the_geom = geomfromtext('POINT('||x||' '||y||')',4326);
Hätt ich mir das 4x Editieren sparen können
Grüssle Uwe
Jetzt klappte alles! Nochmals vielen Dank!