Pages: 1
- Sujet précédent - SQL : somme de valeurs associés a des points, compris dans un polygone - Sujet suivant
#1 Mon 14 November 2005 17:30
- yvan
- Juste Inscrit !
- Date d'inscription: 14 Nov 2005
- Messages: 2
SQL : somme de valeurs associés a des points, compris dans un polygone
Salut,
j'utilise (un peu) mapinfo, mais je suis une chèvre avec les requetes SQL.
J'ai une couche avec des points (village, population..)
une couche avec des polygones.
Je voudrais simplement faire une somme des populations des villages compris dans chaque polygone...c'est pas sorcier mais j'arrive pas.
Qq un pourrait il m'aider, avec des mots simples svp !!
merci merci
yvan.
Hors ligne
#2 Mon 14 November 2005 19:10
- Damien BEAUSEIGNEUR
- Participant assidu
- Lieu: meyzieu
- Date d'inscription: 5 Sep 2005
- Messages: 425
Re: SQL : somme de valeurs associés a des points, compris dans un polygone
il s'agit d'effectuer une selection avec un group by, pour associer tous les points contenus dans le même polygone, et en obtenir la somme
Détail de la commande
select id_polygone , sum (pop_village)
choix des collones à afficher (les id_polygone doivent être unique pouyr que celà fonctionne par polygone)
from couche_polygone, couche_village
de la couche polygone et de la couche village
where couche_polygone.obj contains couche_village.obj
Lien entre les deux tables pour associé un enregistrement.
Il faut que le point de la couche village soit compris dans le polygone de la couche polygone pour pouvoir associé les deux enregistrements
group by id_polygone
ce qui permet de regrouper tous les résultats par polygone
note: les champs indiqués dans le group by doivent être ceux présents dans la sélection, ne pas mettre dans la sélection un champ de polygone non inscris ici
Cela nous donne :
select id_polygone, sum (pop_village) from couche_polygone, couche_village where couche_polygone.obj contains couche_village.obj group by id_polygone;
Si celà a put être utile
Damien BEAUSEIGNEUR
Hors ligne
#3 Tue 15 November 2005 08:36
- yvan
- Juste Inscrit !
- Date d'inscription: 14 Nov 2005
- Messages: 2
Re: SQL : somme de valeurs associés a des points, compris dans un polygone
oui, oui, ca m'est utile et en plus ca marche. Donc merci
yvan
Hors ligne
#4 Tue 15 November 2005 12:04
- Jean-Baptiste Raynaud
- Invité
Re: SQL : somme de valeurs associés a des points, compris dans un polygone
Bonjour,
La requête que tu veux faire est de type "Group By",
tu dois donc grouper les données de la table points par une colonne de ta
table polygone.
Dans le requêteur SQL de MAP ta requête doit donc avoir la forme suivante:
Colonne:Identifiant_polygone,sum(village_population)=> la somme de la
population des villages
tables:village, table_polygone
critères:vilage.obj within table_polygone.obj
Grouper par colonne:Identifiant_polygone
Si tu veux le nombre de village dans un polygone c'est count(*)...
Jean-Baptiste Raynaud
#5 Tue 15 November 2005 12:05
- fgasc
- Juste Inscrit !
- Lieu: Beaugency
- Date d'inscription: 9 Sep 2005
- Messages: 8
Re: SQL : somme de valeurs associés a des points, compris dans un polygone
Sans avoir à passer par une requete SQL :
Menu "Table>Mettre à jour colonne"
table à mettre à jour = polygones
prendre valeurs dans table = points
colonne à mettre à jour = Ajouter une colonne temporaire
calculer = somme
de = nombre d'habitants
La jointure se définissant de la manière suivante (en cliquant sur le bouton "jointure"):
deuxième radio bouton :"où l'objet de la table POINT est A L'INTERIEUR DE
l'objet de la table POLYGONE"
Florent GASC
Assistant à la Direction du Développement Agricole
SOSUCAM
Yaoundé Cameroun
Hors ligne
Pages: 1
- Sujet précédent - SQL : somme de valeurs associés a des points, compris dans un polygone - Sujet suivant