#1 Tue 07 March 2006 14:18
- antoine27
- Participant occasionnel
- Date d'inscription: 29 Dec 2005
- Messages: 20
requetes
Bonjour,
J'aimerais savoir si il existe un opérateur du type contraire à "Contains" :cad "ne contient pas" ou s'il existe une alternative pour cet opérateur.
merci
Hors ligne
#2 Tue 07 March 2006 15:19
- jean-francois Behm
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 212
- Site web
Re: requetes
il faut sélectionner les objets qui n'appartiennent pas à la liste des objets qui contiennent :
dans la zone critère :
ta_couche.id not in(SELECT ta_couche.id FROM ta_couche, ta_2eme_couche WHERE ta_couche.obj contains ta_2eme_couche.obj)
simple, non !?!
Hors ligne
#3 Wed 08 March 2006 12:18
- antoine27
- Participant occasionnel
- Date d'inscription: 29 Dec 2005
- Messages: 20
Re: requetes
Merci pour ta réponse, je me met tout de suite au travail.
Hors ligne
#4 Fri 10 March 2006 16:56
- antoine27
- Participant occasionnel
- Date d'inscription: 29 Dec 2005
- Messages: 20
Re: requetes
J'ai essayé ce que tu as dit mais il me met que la ondition de jointure est
erronée
y a t il une autre solution
merci
Hors ligne
#5 Fri 10 March 2006 17:18
- Damien BEAUSEIGNEUR
- Participant assidu
- Lieu: meyzieu
- Date d'inscription: 5 Sep 2005
- Messages: 425
Re: requetes
Une autre solution tu sélectionnes dans ta couche tous les élements qui sont contenus dans ta deuxième table. Mapinfo te sélectionnera sur la carte tous les élément que tu ne veux pas. Il te reste à inverser ta sélection, et tu obtien ton résultat.
donc dans ta zone critère marque seulement:
ta_couche.obj contains ta_2eme_couche.obj
Celà devrais fonctionner.
Hors ligne
#6 Fri 10 March 2006 17:58
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: requetes
Bonjour,
Eh oui...il est comme ça notre MapInfo!!!
Quand on lui dit <> ou not quelque chose, il ne trouve pas de jointure
Donc il faut lui dire = ou quelque chose (genre contains) et inverser la sélection obtenue dans la table
Ou utiliser une sous sélection précédée du mot miracle ANY:
select * from matable1 where not obj contains any (select obj from matable2)
ps: voir les docs sur SQL dans http://www.paris-pc-gis.com/MI_Enviro/mie_start.htm
Hors ligne
#7 Mon 13 March 2006 10:02
- jean-francois Behm
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 212
- Site web
Re: requetes
J'ai essayé ce que tu as dit mais il me met que la ondition de jointure est
erronée
y a t il une autre solution
merci
Dans la requête SQL il ne faut mettre qu'une table dans la zone "tables".
Hors ligne