Pages: 1
- Sujet précédent - Sélectionner les objets inclus dans d'autres au sein d'une même table - Sujet suivant
#1 Tue 21 October 2008 18:18
- Miss T.
- Participant assidu
- Lieu: En pleine amazonie...
- Date d'inscription: 17 Oct 2005
- Messages: 294
Sélectionner les objets inclus dans d'autres au sein d'une même table
Bonjour à tous,
J'essaie en vain de créer une requête pour avoir les polygones d'une table inclus dans un polygone de la même table.
Quelque chose du genre
Code:
select * from tableXXX where obj contains entire any (select obj from tableXXX)
Sauf que cette requête me renvoie tous les objets. Normal, je n'ai pas de clause où tableXXX.id <> tableXXX.id
Existe-t-il un moyen de réaliser cette sélection sans avoir à copier tableXXX pour avoir tableXXX2 et sélectionner le croisement entre les 2 avec :
Code:
Select * from tableXXX, tableXXX2 where tableXXX.Obj Entirely Within tableXXX2.Obj and tableXXX.id <> tableXXX2.id into Selection
Hors ligne
#2 Tue 21 October 2008 18:31
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Bonjour
Enfin une réponse simple: non !!
Hors ligne
#3 Wed 22 October 2008 10:00
- Miss T.
- Participant assidu
- Lieu: En pleine amazonie...
- Date d'inscription: 17 Oct 2005
- Messages: 294
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Pour une réponse simple, elle est un peu... négative.
Merci quand même Maurice et à bientôt pour de nouvelles aventures passionnantes...
Hors ligne
#4 Fri 24 October 2008 15:28
- jean-francois Behm
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 212
- Site web
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
une piste avec areaoverlap(tableXXX.obj,tableXXX.obj) qui retourne la surface commune entre deux objets :
SELECT * FROM tableXXX
WHERE areaoverlap(tableXXX.obj,tableXXX.obj)>0
??? (pas le temps de tester)
Bon courage !
Hors ligne
#5 Fri 24 October 2008 15:47
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Si ce sont tous des polygones...ça les retournera tous, puisque ils se superposent tous à eux mêmes avec une surface non nule
Hors ligne
#6 Tue 28 October 2008 18:23
- jean-francois Behm
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 212
- Site web
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Effectivement, j'ai répondu un peu vite (il faut dire que le vendredi après-midi...).
Et en ajoutant un 2ème critère :
SELECT * FROM tableXXX
WHERE areaoverlap(tableXXX.obj,tableXXX.obj)>0
AND areaoverlap(tableXXX.obj,tableXXX.obj) <>area(obj, "sq m")
??
(à condition que l'unité par défaut soit le m²)
Hors ligne
#7 Tue 28 October 2008 19:00
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
C'est bien d'être persévérant
Cette fois, rien ne sera sélectionné car la seconde condition est toujours fausse...tant qu'on travaille sur une seule table
MI considère les objets l'un après l'autre et teste sur eux les conditions
Il faut deux table pour qu'un objet de l'une soit comparé à d'autres objets de l'autre
Hors ligne
#8 Tue 28 October 2008 20:04
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Bonjour,
dommage, l'outil Sélection par polygone se réfère au centroïde des objets !
Jean-Marc Hanczyk
Hors ligne
#9 Wed 29 October 2008 17:58
- jean-francois Behm
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 212
- Site web
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Il faut deux table pour qu'un objet de l'une soit comparé à d'autres objets de l'autre
Il faudrait donc faire une copie de la table et de l'utiliser comme 2eme table pour que ça marche ?
Hors ligne
#10 Wed 29 October 2008 20:46
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Sélectionner les objets inclus dans d'autres au sein d'une même table
Comme je l'ai dit au post #2, je suis convaincu que c'est la seule solution ...
Hors ligne
Pages: 1
- Sujet précédent - Sélectionner les objets inclus dans d'autres au sein d'une même table - Sujet suivant