[OSM-dev-fr] Osmose
Marc SIBERT
marc at sibert.fr
Ven 18 Fév 15:57:46 GMT 2011
Le 18 février 2011 13:35, Bruno Cortial <bruno.cortial at laposte.net> a écrit
:
> Bonjour
>
> Apparemment le traitement "gis_building_overlaps-france" d'Osmose a été
> relancé hier [1], mais les résultats semblent incomplets, il ne trouve que
> 1500 anos sur la France [2], alors qu'on était à 150.000 il y a quelque mois
> [3]
> Je trouve 660 anos sur Nantes avec la requête ci-dessous.
> Quelqu'un est dessus ?
> BrunoC
>
> [1] http://osmose.openstreetmap.fr/cgi-bin/last-update.py<http://osmose.openstreetmap.fr/cgi-bin/last-update.py>
> [2] http://osmose.openstreetmap.fr/cgi-bin/info.py?source=64
> [3]http://osmose.openstreetmap.fr/cgi-bin/graph.py?source=64&class=1<http://osmose.openstreetmap.fr/cgi-bin/graph.py?source=64&class=1>
>
>
> select
> osm1.osm_id
> from
> planet_osm_polygon as osm1,
> planet_osm_polygon as osm2,
> planet_osm_polygon as commune
>
> where
> GeometryType(osm1.way) = 'POLYGON'
> and GeometryType(osm2.way) = 'POLYGON'
> and osm1.way && commune.way
> and osm2.way && commune.way
> and ST_Contains(commune.way, osm1.way)
> and commune.name = 'Nantes'
> and osm1.way && osm2.way
> and osm1.building is not null
> and osm2.building is not null
> and osm1.osm_id <> osm2.osm_id
> and ST_Overlaps(osm1.way,osm2.way)
>
>
> Bonjour,
Juste un truc pour diviser par 2 la complexité de ta requête :
and osm1.osm_id* <** *osm2.osm_id
Il suffit de faire la comparaison une seule fois puisque c'est la même table
que tu parcours (deux fois) et si osm_id est ta clé primaire...
Pour plus de clarté, préfère les JOINs pour lier les tables, ça permet de
séparer les conditions de jointure des conditions de sélection (mais le
résultat doit être strictement identique après l'optimiseur de requête).
A+
--
Marc Sibert
marc at sibert.fr
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.openstreetmap.org/pipermail/dev-fr/attachments/20110218/2e26c90c/attachment.html>
More information about the dev-fr
mailing list