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

Annonce

GEODATA DAYS 2024

#1 Wed 09 July 2008 23:41

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

Requête SQL sous MapInfo

Bonjour,

J'ai un problèmeSQL à résoudre avec MapInfo. J'ai deux tables MapInfo : une table des dépots argileux et une table des troncçons de routes et on veut savoir la longueur totale des tronçons qui sont couverts par les polygones constitués par les dépôts argileux. J'ai créé un champ lenht dans la table Tronçon et calculer la longueur de chaque tronçon en km avec la fonction ObjLen.Mais je n'arrive pas à effectuer une requête qui me renvoie la longueur totale des tronçons qui sont couverts par les polygones de dépôts argileux.

Quelqu'un a-t-il un suggestion à me faire pour construire une requête qui me renvoie la longueur totale des tronçons qui sont couvert par les dépôt argileux???

Merci d'avance pour vos pistes ou suggestions

Hors ligne

 

#2 Thu 10 July 2008 09:42

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

Re: Requête SQL sous MapInfo

Bonjour
Un classique, déjà traité dans le forum et évoqué à l'avant dernière page de ce document, que l'on trouve désormais aussi sur Georezo smile

Hors ligne

 

#3 Thu 10 July 2008 09:59

Maestro de la salsa
Participant actif
Date d'inscription: 7 Jun 2006
Messages: 133

Re: Requête SQL sous MapInfo

Bonjour,

Trois choses:

1-Tes tronçons existants sont ceux couverts(entièrement) par un polygone de dépots argileux:
Select SUM(ObjectLen(obj,"km")) from table_tronçon.

2-Tes tronçons existants sont ceux couverts(entièrement) par un polygone de dépots argileux: ajouter une colonne et la remplir comme tu l'as fait (objectLen). Ensuite sélection, statistique, choisir la colonne ajoutée et tu as la somme.

3-Un troçon peut être couvert en partie par un polygone....dans ce cas je procède de deux façons: faire une copie de ma table tronçon, rendre modifiable la table troçon et la selectionner, objet definir cible, sélectionner la table des polygone, objet supprimer extérieur.
A partir de là tu as une table des tronçons couverts par les polygones. Avec la première ou la deuxième méthode sur cette table finale tu as la longueur totale.


Alain

Hors ligne

 

#4 Thu 10 July 2008 18:35

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

Re: Requête SQL sous MapInfo

Bonjour Maurice et Maestro,

Merci pour vos suggestions, j'ai résolu mon pbl. J'ai envisagé la solution de maestro, mais je la trouvais un peu long, en plus que mon réseau routier couvre la totalité de l'Île de Montréal (très dense, environ 50 000 tronçons), ce qui allait prendre bcp en terme de traitement (cpu). C'est la raison pour laquelle j'ai opté pour une solution SQL.

En tout cas, j'ai réussi à exécuter la requête à l'aide de l'exemple du document de Sébastien Roddier et de Jacques Paris et merci encore pour votre aide.

Cordialement

Hors ligne

 

#5 Sun 10 August 2008 09:28

SRoddier
Membre
Date d'inscription: 19 Oct 2007
Messages: 14

Re: Requête SQL sous MapInfo

Bonjour


Je suis heureux de voir que notre document à Jacques Paris et moi même continue de servir les intérêts de tous.

Je ne desespère pas avoir un jour le temps de l'améliorer.

Lorsque j'avais écrit ce document (à l'époque) celui çi s'inscrivait dans un processus plus large de constitution d'une bibliothèque de fonctions utilisables soit en mode commande dans une fenêtre soit via une boite de dialogue via à un mbx développé pour l'occasion.

Par exemple : une fonction adjacence (in-table; adj-table;out-table) qui ferait appel à la sélection SQL correspondante.

A l'époque j'avais commencer à travailler sur plusieurs bibliothèques de fonctions :
- raster : manipulation d'images (on trouve des DLL partout maintenant permettant de la faire sous MI)
- grille : manipulation de grille -j'avais été en contat avec l'auteur de grid à la toute première version de Grid Analyser
- vecteur : manipulation des tables MI via SQL ou autre

En résumé, beaucoup de choses inachevées mais qui mériterait d'être reprise et surtout partagées (c'était mon but à l'époque).

Cdt

Hors ligne

 

Pied de page des forums

Powered by FluxBB