#1 Sat 13 February 2010 18:15
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Requête - MI 7.8
Bonjour,
j'ai 3 tables :
- une table "forage", table de plusieurs points avec pour attribut les codes des forages
- une table "communes", table de plusieurs polygones avec pour attribut les noms des communes
- une table "zone", table de plusieurs polygones avec pour attribut les noms des zonages
mon but :
obtenir une liste des forages situés dans une zone avec le nom de la commune
Est-ce possible par UNE requête ?
merci,
jmh
Jean-Marc Hanczyk
Hors ligne
#2 Sat 13 February 2010 18:27
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Requête - MI 7.8
Salut,
Difficile en effet car il te faut plusieurs jointures spatiales.
Tes zones englobent t'elles plusieurs communes?
A+
Joël
Hors ligne
#4 Sun 14 February 2010 12:25
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Requête - MI 7.8
Salut,
obtenir une liste des forages situés dans une zone avec le nom de la commune
Alors obtenir la liste des forages par Commune ou par Zone pas de problème
Select * from Table_Forages where obj within any
(select obj from Table_Communes where NomCommune like "BlaBlaBla") into Resultat
Select * from Table_Forages where obj within any
(select obj from Table_Zones where CodeZone = 1) into Resultat
mais
---> Que veux tu, quand ta zone comporte plusieurs communes?
---> Que veux tu, quand ta zone est à cheval sur plusieurs communes?
A+
Joël
Dernière modification par Spacejo (Sun 14 February 2010 12:39)
Hors ligne
#5 Sun 14 February 2010 13:56
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Re: Requête - MI 7.8
Bonjour,
mon souhait :
avoir une liste des forages situés dans la zone "marne" avec dans ce listing les champs : nom du forage et nom de la commune
merci
Jean-Marc Hanczyk
Hors ligne
#6 Mon 15 February 2010 20:41
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Requête - MI 7.8
Salut
Si je comprends, il faut faire le tout en deux étapes:
1- Assigner le nom de la commune à chaque forage. Mise à jours d'une colonne (nom_commune) à partir de lien géographique (Forage à l'intérieur de commune).
2- Faire une sélection des points à l'intérieur d'une zone ou même chose que #1, mise à jour colonne (Zone) à partir de lien géographique (forage à l'intérieur de Zone) ou un SQL avec un intersect où tu retrouveras dans une base de données, les forages pour chaque zone avec leur nom, la commune, trier par zone.
Ou j'ai complètement passé à côté du problème
Daniel
De retour à la géomatique
Hors ligne
#7 Mon 15 February 2010 21:20
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Requête - MI 7.8
Bonjour
Select * from forage, commune, zone where forage.Obj Within commune.Obj And commune.obj Within zone.obj
donne les 21 forages qui sont ET dans une commune ET dans une zone
Les 10 qui sont dans une zone sans être dans une commune ne sont pas sélectionnés...
Hors ligne
#8 Mon 15 February 2010 21:38
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Re: Requête - MI 7.8
Bonjour,
la tête dans le guidon*, j'ai totalement oublié ça !!!
(*Maurice me comprendra je suis à fond dans la GéoBase)
La réponse de Maurice fonctionne comme celle de Daniel.
un petit cocorico :
Vive le Québec, vive le Canada, vive les JO...et vive la France CHAMPIONNE OLYMPIQUE.
PS : à cette heure je partage MapInfo avec les superbes images des JO, tout simplement SUPERBE !!!
@+ jmh
Jean-Marc Hanczyk
Hors ligne
#9 Tue 16 February 2010 13:22
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Requête - MI 7.8
Bonjour,
la tête dans le guidon*, j'ai totalement oublié ça !!!
un petit cocorico :
Vive le Québec, vive le Canada, vive les JO...et vive la France CHAMPIONNE OLYMPIQUE.
@+ jmh
Ho! Ho!, nous sommes à égalité... sur le nombre de médaille
Allez Canada
Daniel
De retour à la géomatique
Hors ligne
#10 Tue 16 February 2010 13:42
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Requête - MI 7.8
Oh je pensais que ce n'était pas possible ça -->
Code:
Select * from forage, commune, zone where forage.Obj Within commune.Obj And commune.obj Within zone.obj
Excellent !!!
Vive le Québec, vive le Canada
Charité bien ordonnée commence par soi même !!!
un petit cocorico
Je ne savais pas qu'un Caribou poussait un cocorico, je pensais qu'il était réservé à notre Animal fétiche
même s'il chante les pieds dans la M....
A+
Joël
Hors ligne
#11 Tue 16 February 2010 14:30
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Requête - MI 7.8
Je ne savais pas qu'un Caribou poussait un cocorico, je pensais qu'il était réservé à notre Animal fétiche
même s'il chante les pieds dans la M....
A+
Joël
Bon, petit cours d'histoire emblématique du Québec.
Notre animal emblématique est le harfang des neiges. Le caribou, lui il est sur nos pièces de 25 cents. Bon!, je dois ajouter cependant ceci; le caribou est aussi une boisson alcoolisée (je crois typiquement québécoise mais je ne suis pas certain!) avec un bon pourcentage d'alcool. Ce qui veut dire, que lorsque nous avons une soirée bien arrosée de caribou, il est FOOOORT possible que le caribou fasse cocorico Hic!
Daniel
De retour à la géomatique
Hors ligne
#12 Tue 16 February 2010 14:34
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Requête - MI 7.8
Hoouuu Hoouuu En tout cas il est bien joli votre emblème
Et au moins, il ne vous réveille pas à des heures réservées à la grasse mat
Ca doit être bizarre d'arriver dans un bar et ---> Un Caribou s'il vous plait !!!
Dernière modification par Spacejo (Tue 16 February 2010 14:38)
Hors ligne
#13 Tue 16 February 2010 18:31
- hanczyk
- Participant assidu
- Lieu: Châlons-en-Champagne
- Date d'inscription: 21 Apr 2006
- Messages: 596
Re: Requête - MI 7.8
Bonjour,
alors une petite correction, voici la bonne syntaxe (à cause des centroïds)
Fields {*}
Tables {commune, forage, zone}
Where {commune.obj Contains forage.obj And forage.obj Within zone.obj and zone.NOM_ZONE ="coole"}
Group {}
Order {}
Into {Selection}
Browse
cordialement,
jmh
PS : comme la journée est terminée je rentre prendre un petit Caribou !
Jean-Marc Hanczyk
Hors ligne