banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GEODATA DAYS 2024

#1 Wed 25 July 2007 16:20

hanczyk
Participant assidu
Lieu: Châlons-en-Champagne
Date d'inscription: 21 Apr 2006
Messages: 596

Sélection d'objets

bonjour,
MapInfo 7.8

1 table polygones de communes : AdcoCA
1 table polygone aires urbaines : Aires_urbaines_1999_CA

je souhaite sélectionner les communes dans un rayon de 20 km des aires urbaines, sauf les communes dans les aires urbaines

mon début de requête :
Table : AdcoCA
Critères : obj within any ( select buffer ( obj , 12 , 10 , "km") from Aires_urbaines_1999_CA )

MAIS comment ne pas avoir les communes des aires urbaines ?

and not quelque chose ?...

merci


Jean-Marc Hanczyk

Hors ligne

 

#2 Wed 25 July 2007 17:47

Marc-André
Participant assidu
Lieu: Montréal
Date d'inscription: 30 Sep 2005
Messages: 688

Re: Sélection d'objets

Bonjour,

Une façon de faire serait de créer des tampons à partir des aires urbaines, puis de les évider à partir des polygones des aires urbaines.
Ensuite, la requête donnera les résultats souhaités.

Hors ligne

 

#3 Wed 25 July 2007 18:23

Aurélien.clavreul
Juste Inscrit !
Date d'inscription: 15 Jan 2007
Messages: 8

Re: Sélection d'objets

Bonsoir, je n'ai pas eu le temps de voir si ça marchait :

Table : AdcoCA, Aires_urbaines_1999_CA


Critères : AdcoCA.obj within any ( select buffer ( obj , 12 , 10 , "km") from Aires_urbaines_1999_CA ) and AdcoCA.obj contain not Aires_urbaines_1999_CA.obj

Bonne soirée.

Aurélien

Hors ligne

 

#4 Wed 25 July 2007 18:25

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Sélection d'objets

Bonjour
L'autre solution est de commencer par ajouter un attribut aux communes suivant qu'elles sont ou non dans une aire urbaine, ce qui donnera le contenu du and quelque chose...
A moins que

Code:

Select * from AdcoCA,Aires_urbaines_1999_CA where AdcoCA.obj within any (select buffer (Aires_urbaines_1999_CA.obj , 12 , 20 , "km") from Aires_urbaines_1999_CA ) and not AdcoCA.obj entirely within Aires_urbaines_1999_CA.obj

veuille bien marcher  ??

Hors ligne

 

#5 Thu 26 July 2007 00:45

hanczyk
Participant assidu
Lieu: Châlons-en-Champagne
Date d'inscription: 21 Apr 2006
Messages: 596

Re: Sélection d'objets

merci,

je pense que je vais pencher vers la solution de Marc André.
hélas cela m'oblige à créer une table.

pour la proposition de MAURICE j'ai la boîte de dialogue suivante :

Aucne jointure n'est spécifiée entre les tables AdcoCA et Aires_urbaines_1999_CA. Condition de jointure errronée dans la clasue Critères (Where).

Bon je vais me coucher, la nuit porte conseil...


Jean-Marc Hanczyk

Hors ligne

 

#6 Thu 26 July 2007 08:56

Gérard parcoli
Participant actif
Date d'inscription: 9 Jan 2007
Messages: 95

Re: Sélection d'objets

Bonjour,
En transformant en polyligne un premier tampon à mi-distance (10km au lieu de 20) et en retransformant ce polyligne en tampon (à 10 km pour chaque coté du polyligne, ce qui fait 20km) ça le ferait en un coup...

Code:

Select * from AdcoCA  where obj within any (select buffer (converttopline(buffer ( obj , 12 , 10 , "km")), 12 , 10 , "km") from Aires_urbaines_1999_CA) into Sel

Hors ligne

 

Pied de page des forums

Powered by FluxBB