#1 Mon 19 March 2007 14:53
- Pierre.J
- Participant occasionnel
- Lieu: Nantes - Paris
- Date d'inscription: 1 Nov 2006
- Messages: 37
jointure de tables
Bonjour à tous,
voilà mon soucis, peut être que certains d’entre vous pourrez m’éclairer.
J’ai besoin de joindre deux tables.
L’une contient des polygones (parcelles), l’autre du texte(numéro de parcelle). Je souhaiterai associer le texte au polygone.
Le problème est le suivant :
Pour certaines parcelles il y a deux informations quand il y a des lettres avec le numéro, exemple « 56a » le « 56 » est un objet texte, le « a » également. Du coup quand je joins cette table avec ma table polygone (requête SQL, opérateur Contains) il me double les enregistrements, l’un avec « 56 », l’autre avec « a ».
Ce qu’il me faudrait c’est une manipulation qui lui dise : « Associe à l’objet géographique polygone tout les éléments textes que trouves à l’intérieur et met les dans une seule et même ligne à la suite ».
Voilou,
Merci d’avance à vous tous
Longue vie à ce forum,
Pierre
Hors ligne
#2 Mon 19 March 2007 15:10
- Laetitia OLS
- Juste Inscrit !
- Lieu: Rodez
- Date d'inscription: 27 Sep 2006
- Messages: 6
Re: jointure de tables
Bonjour Pierre,
Concernant ta table des numéros de parcelles, elle contient une seule colonne avec par exemple "56a" ou bien deux colonnes avec "56" et "a" ?
Si c'est ce deuxième cas, crée d'abord dans ta table une nouvelle colonne et remplis là avec un code qui va concaténer les deux colonnes.
Laetitia
Hors ligne
#3 Mon 19 March 2007 15:14
- Pierre.J
- Participant occasionnel
- Lieu: Nantes - Paris
- Date d'inscription: 1 Nov 2006
- Messages: 37
Re: jointure de tables
C est le premier cas.
Je n'ai qu'une seule colonne qui contient tout le texte de la table. Une solution serai de séparer les éléments numériques des caracteres, mais je ne sais pô quelle selection faire...
Hors ligne
#4 Mon 19 March 2007 15:29
- Laetitia OLS
- Juste Inscrit !
- Lieu: Rodez
- Date d'inscription: 27 Sep 2006
- Messages: 6
Re: jointure de tables
C'est bizarre car si ta colonne est de type "texte", il n'y pas de raison que ça te sépare les chiffres du caractère...
Dernière modification par Laetitia OLS (Mon 19 March 2007 15:39)
Hors ligne
#5 Mon 19 March 2007 15:53
- Pierre.J
- Participant occasionnel
- Lieu: Nantes - Paris
- Date d'inscription: 1 Nov 2006
- Messages: 37
Re: jointure de tables
Le probleme est au niveau de la création de cette BD, ils ont systematiquement séparés les nombres des lettres.
pfffiiiouu...
Hors ligne
#6 Mon 19 March 2007 15:54
- Cartosig
- Participant assidu
- Date d'inscription: 16 Oct 2006
- Messages: 222
Re: jointure de tables
Pour certaines parcelles il y a deux informations quand il y a des lettres avec le numéro, exemple « 56a » le « 56 » est un objet texte, le « a » également.
ce n'est pas très clair tout ça !
Il faut etre plus explicite car là c'est incompréhensible !
Hors ligne
#7 Mon 19 March 2007 16:26
Re: jointure de tables
Associe à l’objet géographique polygone tout les éléments textes que trouves à l’intérieur et met les dans une seule et même ligne à la suite
Ca me semble difficile. D'ailleurs, il ne saura pas s'il doit faire 56a ou a56 .... ou 56ab ou a56b ou .. etc... selon le nombre d'objets de votre parcelle (cadastre je suppose).
En gros, s'il fait 2 jointures, c'est normal : 1 objet parcelle vers plusieurs objets textes....
A mon avis vous auriez intéret a commencer par associer vos numeros de parcelles avec vos parcelles. Quitte à les decouper et les renseigner séparement avec les lettres.
Robin.
Hors ligne
#8 Mon 19 March 2007 16:30
Re: jointure de tables
Pour certaines parcelles il y a deux informations quand il y a des lettres avec le numéro, exemple « 56a » le « 56 » est un objet texte, le « a » également.
D'ailleurs et pour être précis, il faudra construire des requetes pour dissocier le numero et les lettres.
Si dans une colonne il y a un objet avec un attribut de type chaine la colonne entière sera de type chaine.
Si vous voulez des numeros il faudra "épurer" la colonne des lettres...
Bon courage,
Robin.
Hors ligne
#9 Mon 19 March 2007 20:51
- Damien BEAUSEIGNEUR
- Participant assidu
- Lieu: meyzieu
- Date d'inscription: 5 Sep 2005
- Messages: 425
Re: jointure de tables
Pour la séparation entre lettres et chiffres, puisque les lettres et les chiffres sont séparés.
Première requête:
Ajoute un champ a ta tables contenant les descriptifs (numérique de préférence)
Sélectionne tous les 0 si il y en a et mets les de côtés.
Ensuite
Mets à jour le nouveau champ avec val(ref) Avec "ref" pour le nom du champ de référence.
Tu obtiendras un 0 dans ton champ numérique pour toute valeur texte.
Tu as donc maintenant le moyen d'obtenir toutes tes valeurs.
Cordialement,
Damien.
Hors ligne
#10 Tue 20 March 2007 11:04
- Pierre.J
- Participant occasionnel
- Lieu: Nantes - Paris
- Date d'inscription: 1 Nov 2006
- Messages: 37
Re: jointure de tables
Merci à vous tous, je vais éssayer la technique de Damien sous peu, et je vous tient au courant du résultat.
Pierre
Hors ligne