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 Wed 20 November 2013 06:43

tta
Participant occasionnel
Lieu: Montréal
Date d'inscription: 4 Oct 2005
Messages: 39

RequĂȘte spatiale MapInfo

Bonsoir,

J'aimerai demander l'avis des experts SQL MI sur la façon de formuler une requĂȘte SQL de type spatiale entre deux tables dans MapInfo. J'ai un collĂšgue de travail qui m'a demandĂ© cette semaine de lui calculer dans un premier temps la longueur totale des segments de rues Ă  sens unique intersectant, les catĂ©gories d'occupation du sol de types (Habitation faible, moyenne, haute densitĂ© et commerce de dĂ©tail) et dans un second temps les segments dans les deux sens pour les mĂȘmes catĂ©gorie d'occupation du sol. Je possĂšde deux tables:
une table polygone OccupSol  avec comme champs Id et Cat_occupsol et la table Tronçon avec plusieurs champs dont Id_tronçon, nom_rue, sensCirculation etc.
Comment pourrai-je formuler cette requĂȘte.

Merci d'avance pour toue solution ou réponse à cette question!
Cordialement.

Hors ligne

 

#2 Wed 20 November 2013 10:06

JF BEHM
Participant actif
Lieu: toulouse
Date d'inscription: 9 Aug 2013
Messages: 127
Site web

Re: RequĂȘte spatiale MapInfo

Bonjour,
Pour la longueur totale des tronçons de rue  intersectant, les catĂ©gories d'occupation du sol de types (Habitation faible, moyenne, haute densitĂ© et commerce de dĂ©tail), je ferais comme ça :

SELECT Cat_occupsol, sum(champ_longueur_troncon) "longueur totale"
FROM OccupSol, Tronçon
  WHERE tronçon.obj intersects OccupSol.obj
        AND sensCirculation = "unique"
GROUP BY Cat_occupsol

A tester !


Jean-François Behm, formateur SIG, jf.behm@texte-a-enlever.idgeo.fr, formations@texte-a-enlever.idgeo.fr
IDGEO, www.idgeo.fr
Institut de DĂ©veloppement de la GĂ©omatique  42, avenue de GĂ©nĂ©ral de Croutte - 31100 toulouse

Hors ligne

 

#3 Wed 20 November 2013 10:17

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

Re: RequĂȘte spatiale MapInfo

Bonjour
Pensez Ă  consulter les documents Ă©voquĂ©s dans ce post Ă©pinglĂ© en tĂȘte du forum...
Un cas similaire est évoqué (de mémoire des longueurs de ligne électrique dans une commune)
Bon courage

Hors ligne

 

#4 Fri 22 November 2013 07:26

tta
Participant occasionnel
Lieu: Montréal
Date d'inscription: 4 Oct 2005
Messages: 39

Re: RequĂȘte spatiale MapInfo

Bonsoir Jean-François et Maurice,

Merci pour vos rĂ©ponses et solutions Ă  ma question. J'ai effectivement rĂ©ussi Ă  Ă©crire la requĂȘte en suivant l'exemple fourni par JF en l'adaptant. À priori ça fonctionne. Quant Ă  la rĂ©fĂ©rence fournie par Maurice, je n'ai pas encore eu le temps d'y jeter un cou doeil. Mais je le ferai au courant de la semaine prochaine.

Merci encore Ă  vous!

Voici la requĂȘte:

Code:

SELECT Occupation_sol.NOM_OCCUP, Sum(ObjectLen(obj, "km"))
 FROM Tronçon, Occupation_sol 
   WHERE Tronçon.Obj intersects Occupation_sol.Obj 
      And Tronçon.ARTERE = 0 And Occupation_sol.NOM_OCCUP in ("01. Habitation faible densité" , "02. Habitation moyenne densité" , 
     "03. Habitation haute densité" , "04. Commerce de détail") 
GROUP BY Occupation_sol.NOM_OCCUP 
ORDER BY Occupation_sol.NOM_OCCUP

Hors ligne

 

#5 Fri 22 November 2013 07:30

tta
Participant occasionnel
Lieu: Montréal
Date d'inscription: 4 Oct 2005
Messages: 39

Re: RequĂȘte spatiale MapInfo

En passant , j'ai fait la requĂȘte pour les tronçons de rue Ă  deux sens. La colonne qui indique le sens est ARTERE qui possĂšde 3 valeurs 0 pour les deux sens, 1 sens unique selon le sens de numĂ©risation et -1 sens unique contraire au sens de numĂ©risation.

Cordialement

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo