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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 08 November 2007 12:11

Vincent PRIOUL
Juste Inscrit !
Date d'inscription: 12 Sep 2007
Messages: 3

problème de jointure de 2 tables sur MI8.5

Bonjour,
J'ai regardé les différents sujets et je n'ai pas trouvé de réponses au problème que je me pose, alors voilà :
Je voudrais faire une jointure entre 2 tables (localisant bd parcellaire et import majic 2) qui n'ont pas de colonne identique mais qui contiennent toutes 2 des codes parcelles
- j'ai une table avec une colonne "code_parcelle" qui a la forme "26165ZE0385" (code insee commune+section+n°parcelle)
cette colonne est une chaîne de caractère
- j'ai une autre table avec une colonne "ref_parc" qui a la forme "ZE0385" (section+n°parcelle), une colonne "codep" qui a la forme "26" (code département) et une autre colonne "cocom" "165" (code commune)
la colonne "ref_parc" est une chaîne de caractère et les colonnes "codep" et "cocom" sont de type "flottant"
Est-ce possible de joindre ces 2 tables ? par une sélection SQL ? en passant par Excel et en faisant une concaténation des 3 champs ?

Merci d'avance pour toutes les réponses que vous pourrez me donner.
Cordialement
Vincent

Hors ligne

 

#2 Thu 08 November 2007 12:32

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

Re: problème de jointure de 2 tables sur MI8.5

Bonjour
Sans rien casser, vous pouvez passer vos deux champs flottants  "codep" et "cocom" en caractère, respectivement 2 et 3 ...d'ailleurs si vous étiez Corse vous seriez bien obligé de la faire smile
- si vous le faits, vous pouvez utiliser comme condition de jointure l'expression
where code_parcelle = codep+cocom+ref_parc
- si vous ne le faites l'expression peut être
where code_parcelle = FormatNumber$(codep)+FormatNumber$(cocom)+ref_parc

Hors ligne

 

#3 Thu 08 November 2007 13:09

Vincent PRIOUL
Juste Inscrit !
Date d'inscription: 12 Sep 2007
Messages: 3

Re: problème de jointure de 2 tables sur MI8.5

Merci pour ces informations mais ça ne marche pas : quand j'essaye les 2 solutions le message d'erreur dit "aucune jointure n'est spécifiée entre les tables ... condition de jointure erronée dans la clause where

Hors ligne

 

#4 Thu 08 November 2007 13:33

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

Re: problème de jointure de 2 tables sur MI8.5

Plus précisément il faut écrire (ou faire écrire par le requêteur) soit:
- table1.code_parcelle = table2.codep+table2.cocom+table2.ref_parc
- table1.code_parcelle = FormatNumber$(table2.codep)+FormatNumber$(table2.cocom)+table2.ref_parc
...ou créer une colonne et la mettre à jour avec l'une de ces expressions avant de l'utiliser en jointure:
- table1.code_parcelle = table2.nouvelle_colonne

Hors ligne

 

#5 Thu 08 November 2007 14:43

Vincent PRIOUL
Juste Inscrit !
Date d'inscription: 12 Sep 2007
Messages: 3

Re: problème de jointure de 2 tables sur MI8.5

impeccable ! ça a marché (création d'une nouvelle colonne pour faire la jointure) merci pour cette aide précieuse
bonne journée

Hors ligne

 

Pied de page des forums

Powered by FluxBB