Pages: 1
- Sujet précédent - Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète - Sujet suivant
#1 Wed 24 July 2013 16:39
- Roxane
- Participant occasionnel
- Date d'inscription: 9 Aug 2011
- Messages: 15
Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Bonjour,
Le titre n'est pas très explicite et je vais essayer de décrire le plus clairement possible mon problème.
Je travaille sur la hiérarchisation d'un réseau et je dois attribuer à chaque intersection de ce réseau un code de hiérarchisation en fonction du classement hiérarchique le plus élevé des voies de cette intersection.
Chaque voie a un identifiant et un classement dans la hiérarchisation du réseau.
J'ai fait une jointure geographique entre ma table des intersections et la table des sections de voies ayant l'attribut code_hierarchisation.
A partir de là j'obtiens une table où se répète l'id des intersections autant de fois qu'il y a de voies dans cette intersection. A chacune de ces lignes correspond un des identifiant de voie et son code de hierarchisation.
Je voudrais donc ne garder, pour chaque id d'intersection, que le code de hierarchisation des voies le plus petit (qui correspond à la hierarchisation la plus élévée), et donc une seule ligne pour chaque identifiant d'intersection.
Un exemple pour mieux comprendre:
Voilà ce que j'ai:
id_ext_ges voie code_hier
6 rue truc 6
6 rue bidule 6
6 rue ploc 6
6 av machin 2
Voilà ce que j'aimerais avoir:
id_ext_ges voie code_hier
6 av machin 2
J'espère avoir été assez claire dans ma demande.
Merci d'avance pour vos réponses.
Hors ligne
#2 Wed 24 July 2013 16:51
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Salut,
Peux tu expliquer ton exemple car là personnellement je ne vois pas la manip?
A+
Joël
Hors ligne
#3 Wed 24 July 2013 16:58
- Roxane
- Participant occasionnel
- Date d'inscription: 9 Aug 2011
- Messages: 15
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
En fait aujourd'hui:
j'ai dans ma table, pour l'intersection dont l'identifiant est "6", 4 lignes correspondant aux 4 voies qui partagent cette intersection.
Je voudrais ne garder qu'une seule ligne pour cet id "6" correspondant à la voie qui a la typologie de hiérarchisation la plus élevée.
Soit dans l'exemple, l'av Machin dont le code_hierarchisation est "2".
J'espère que c'est un peu plus clair...
Hors ligne
#4 Wed 24 July 2013 17:02
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Ok
As tu beaucoup de d'intersections?
Que veux tu faire des lignes qui ont un coef inférieure (dans ton exemple il ne reste plus que la ligne qui a le coef 2, que fais tu des autres?)
Dernière modification par Spacejo (Wed 24 July 2013 17:06)
Hors ligne
#5 Wed 24 July 2013 17:06
- Roxane
- Participant occasionnel
- Date d'inscription: 9 Aug 2011
- Messages: 15
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Oui!
Pas loin de 1000 intersections!
J'ai commencé à la mano dans excel avec une liste déroulante mais c'est pénible et surtout source d'erreur....
Hors ligne
#6 Wed 24 July 2013 17:13
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Une solution est de travailler avec la FMB et un générateur de scripts.
Connais tu ces outils?
Hors ligne
#7 Wed 24 July 2013 17:21
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Une autre solution possible est aussi de concaténer tes 2 champs "id_ext_ges" et "code_hier" dans un autre champ que tu auras crée.
Et de travailler dessus.
Hors ligne
#8 Wed 24 July 2013 17:21
- Roxane
- Participant occasionnel
- Date d'inscription: 9 Aug 2011
- Messages: 15
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Je connais bien la FMB pour y effectuer bon nombre de requête... par contre je ne sais pas ce qu'est un générateur de scripts...
Hors ligne
#9 Wed 24 July 2013 17:32
- Roxane
- Participant occasionnel
- Date d'inscription: 9 Aug 2011
- Messages: 15
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Je vais travailler la deuxième solution qui me parait dans mes cordes et je vous tiendrais au courant!
Merci Joël!
Hors ligne
#10 Wed 24 July 2013 17:36
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Pourquoi faire simple quand on peux faire compliqué
As tu essayé ceci? -->
Code:
SELECT Voie, MIN(code_hier) FROM TaTable GROUP BY id_ext_ges INTO Resultat
Dernière modification par Spacejo (Wed 24 July 2013 19:09)
Hors ligne
#11 Thu 25 July 2013 10:25
- Roxane
- Participant occasionnel
- Date d'inscription: 9 Aug 2011
- Messages: 15
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Bonjour Joël,
C'est parfait!
J'ai juste sélectionné l'id_ext_ges plutôt que la voie et j'ai obtenu une table Resultat faisant correspondre à chaque id d'intersection, la typologie de hierarchisation la plus petite.
Merci pour votre aide!
Bonne journée.
Hors ligne
#12 Thu 25 July 2013 13:17
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète
Salut,
De rien le forum est fait pour ça
Dans la clause "select" tu peux aussi demander les champs que tu veux
Code:
SELECT id_ext_ges, Voie, MIN(code_hier) FROM TaTable GROUP BY id_ext_ges INTO Resultat
A+
Joël
Hors ligne
Pages: 1
- Sujet précédent - Mapinfo v11: Incrémenter un champ pour un identifiant qui se répète - Sujet suivant