[Talk-de] Ersatz fuer Namefinder
marcus.wolschon at googlemail.com
marcus.wolschon at googlemail.com
Mo Apr 27 09:01:40 UTC 2009
On Fri, 24 Apr 2009 16:38:40 +0200, Christof Amelunxen
<christof.amelunxen at sbg.ac.at> wrote:
> Hi Marcus,
>
> marcus.wolschon at googlemail.com wrote:
>>> Mal gucken, ob ich das zu PostGIS "übersetzen" kann.
>>
>> Kann das Teil sowas wie:
>>
>> SELECT MIN(DISTANCE(X.location, Y.location)) AS distance, X.nodeID,
>> T.value
>> AS placetype
>> FROM Nodes X, NodeTags T WHERE
>> T.nodeID = X.nodeID AND T.key = 'place'
>> und dann halt prüfen ob das resultiernde "distance"-Feld kleiner
>> als der Radius des placetype ist?
>
> Sowas kannst du bei PostGIS z.B. mit der Bedingung
> ST_DWithin(geom1,geom2,distance) abbilden. Die Distanz zwischen zwei
> Punkten bekommst du zwar mit ST_Distance auch heraus...wenn du allerdings
> wie in deinem Beispiel erstmal die Distanz
> aller möglichen Kombinationen berechnen lässt und davon das Minimum
> ermitteln willst, dann läuft der SELECT ewig.
Du selektierst ja nicht über alle Places eines type
sondern nur die in einem maximalen sinnvollen Radius
für diese Typ.
Das sind im Normalfall 0, 1 oder vieleicht mal 2.
Marcus
Mehr Informationen über die Mailingliste Talk-de