#1 Thu 27 April 2017 07:12
- julien26
- Juste Inscrit !
- Date d'inscription: 1 Oct 2014
- Messages: 6
[postgis] somme de valeurs et intersection de grille
Bonsoir,
Après avoir passé l'après-midi coincé et à chercher en vain je me tourne vers vous...
Je dispose de deux couches composé d'anneaux concentriques (de 0 à 1 km puis 1-2, 2-5 etc.) créés à partir d'une couche de points. Dans une même couche, plusieurs anneaux peuvent se chevaucher.
J'ai besoin de sommer dans une grille, l'ensemble des valeurs des anneaux intersectant chacune des mailles (en pondérant une couche par rapport à l'autre (cf. ci-dessous).
J'ai tenté en faisant une jointure entre la grille et les 2 couches d'anneaux mais ça tourne très longtemps sans donner de résultats. J'ai essayé st_intersects et st_overlaps. Voici ma requête :
Code:
select g.id, (sum(n_h_ext.valeur)/2)+sum(n_h_gite.valeur), g.geom from zonages.aura_grid_1km g join ring_ext_note_h n_h_ext on st_overlaps(g.geom, n_h_ext.geom) join ring_gite_note_h n_h_gite on st_overlaps(g.geom, n_h_gite.geom) group by g.id, g.geom
J'imagine que je passe à côté de quelque chose, sans doute dans la jointure mais je ne vois pas...
Est-ce que quelqu'un aurait une idée ?
Merci d'avance
Hors ligne
#2 Thu 27 April 2017 13:51
- julien26
- Juste Inscrit !
- Date d'inscription: 1 Oct 2014
- Messages: 6
Re: [postgis] somme de valeurs et intersection de grille
Bonjour,
J'ai trouvé une manière d'avancer qui donne des résultats dans des temps corrects vu le nombre de polygone.
Je ne passe plus par une jointure mais par une condition et le fait en plusieurs étapes pour avoir ce que je veux.
Même si je ne suis plus coincé, je suis preneur d'avis : est-ce que la manière que j'utilise est la plus logique ou est-ce qu'il y a une autre manière de faire ?
Merci
Hors ligne