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é ?

#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 !?!


Jean-François Behm
SERVICES GEOGRAPHIQUES
Centres de formation SIG - http://servicesgeographiques.com

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

antoine27 a écrit:

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".


Jean-François Behm
SERVICES GEOGRAPHIQUES
Centres de formation SIG - http://servicesgeographiques.com

Hors ligne

 

Pied de page des forums

Powered by FluxBB