Message posté par : Sylvain M.
----------------------------------------
Salut à tous,
Je fais, dans une BD Spatialite, des stats de points (180 000) qui intersectent 2 couches
de polygones (env 2000 entités chacune).
Ma requête s’exécute en 20 min, mais comme je modifie les données et que je la relance
souvent, je voudrais optimiser, si possible, le temps de calcul.
Voici un extrait de la requête :
-----------------
Code :
SELECT count(p.id) nbpts,
avg(p.champ) as champ_moyenne,
...
FROM table_polygones1 tplg1
LEFT JOIN table_points tpts ON ST_Intersects(tplg1.geom, tpts.geom)
LEFT JOIN table_polygones1 tplg2 ON ST_Intersects(tpts.geom, tplg2.geom)
-----------------
Toutes mes tables ont un index spatial (créé via SELECT
CreateSpatialIndex('table', 'geom'); )
Pensez-vous possible d'optimiser la jointure spatiale entre les tables ?
J'ai pas encore bien assimilé les notions/possibilités de RTreeIntersects() : ça vaut
le coup que je creuse de ce côté là selon vous ?
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=344592#p344592
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net