[Talk-de] postgresql (osmosis schema) liste von?nodes?->?Polygon?
Alexander Matheisen
AlexanderMatheisen at ish.de
Fr Jun 10 21:17:02 UTC 2011
> Das geht mit etwas Gruppierungsmagie, aber irgendwie wird es dann
> ineffizient. Die beste Methode ist, sich eine Funktion zu definieren:
>
> CREATE FUNCTION make_way_geometry(id bigint) RETURNS geometry
> AS $$ SELECT ST_MakeLine(n.geom)
> FROM (SELECT unnest(nodes), id
> FROM ways w WHERE id = $1) as w,
> nodes n
> WHERE w.unnest = n.id
> $$ LANGUAGE SQL;
>
> Dann kannst du ganz bequem schreiben:
>
> SELECT id, astext(ST_PointOnSurface(ST_MakePolygon(make_way_geometry(id))))
> FROM ways WHERE....
Hört sich gut an, muss ich dann morgen mal testen.
Macht die Abfragen etwas übersichtlicher, schade, dass ich meine jetzt
nochmal abändern kann...
Alex
Mehr Informationen über die Mailingliste Talk-de