Moin,

Ich treibe die Frage mal noch weiter. Vielleciht geht es ja
tatsächlich mit einem einzigen query alle flächenhaften microbrewery
POI zu selektieren.

Momentan geht folgendes:

Ich selektiere mir alle id die mich interessieren:

SELECT id FROM ways WHERE (tags ? 'microbrewery') and 
(tags->'microbrewery'='yes');

Dann mache ich den folgenden request indem ich über alle id
iteriere:

SELECT astext(ST_PointOnSurface(ST_MakePolygon(ST_MakeLine(n.geom))))
FROM (SELECT unnest(nodes) FROM ways WHERE id = ...) as w, nodes n
WHERE w.unnest = n.id;

So funktioniert das zwar aber es geht bestimmt noch eleganter.

Mein Problem liegt konkret darin, dass ich das "WHERE id = ..." nicht
mit "WHERE (tags ?  'microbrewery')" ersetzen kann, weil ich ja die
einzelnen Gruppen von nodes mit ST_MakeLine bearbeiten möchte und
nicht alle nodes mit diesem tag.

Gruss

Sven

-- 
"Dynamische IP-Nummern sind Security-Homöopathie."
                                                (Kristian Köhntopp)

/me is giggls@ircnet, http://sven.gegg.us/ on the Web

_______________________________________________
Talk-de mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an