Ergebnis 1 bis 2 von 2

Thema: Linestring aus Punkten erstellen

  1. #1
    josias ist offline Neuer Benutzer
    Registriert seit
    03.05.2010
    Beiträge
    3

    Standard Linestring aus Punkten erstellen

    hi, ich habe in einer Datenbank folgende Tabellen:
    Code:
    way_nodes: way_id | node_id | seqence_id
    
    node: id | geom
    dabei soll die seqence_id die Anordnung der Punkte im Weg darstellen.

    nun will ich die Punkte zu einem linestring zusammenfassen, so dass sie in der richtigen reihnfolge sind:
    Code:
    SELECT ST_LineFromMultiPoint(st_union(n.geom))
    FROM 
        (SELECT (SELECT n.geom FROM nodes n WHERE n.id = wn.node_id) as geom 
         FROM way_nodes wn
         ORDER BY wn.sequence_id ) as n limit 1
    scheinbar sortiert st_union aber geografisch (von west nach ost) statt auf die Sortierung der tabelle zu achten

    weiß jemand wie man es richtig macht?

    Alles Gute
    Josias

  2. #2
    josias ist offline Neuer Benutzer
    Registriert seit
    03.05.2010
    Beiträge
    3

    Standard

    so hab jetzt gefunden: man sollte einfach ST_Collect statt st_union verwenden:
    Code:
    SELECT ST_LineFromMultiPoint(ST_Collect(n.geom))
    FROM 
        (SELECT (SELECT n.geom FROM nodes n WHERE n.id = wn.node_id) as geom 
         FROM way_nodes wn
         ORDER BY wn.sequence_id ) as n limit 1

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum