OVH Cloud OVH Cloud

Concatener des enregistrements

1 réponse
Avatar
R. Paire
Je souhaiterais dans un état, "juxtaposer" les données issues de deux
tables. Je m'explique :

Table 1 : Index, partie, longueur, valeur
Table 2 : Index, partie, Epaisseur, Montant

pour afficher Index, partie, longueur, valeur, Epaisseur, Montant et
faire des sommes desvaleurs numériques longueur,valeur, Epaisseur et
Montant

J'ai donc réalisé une requête Union du type
select Index, partie, longueur, valeur, 0,0 ...
union
select Index, partie, 0,0, Epaisseur, Montant ...

Le problème c'est que les données s'affichent sous la forme

I1,P1,L1,V1,0,0
I1,P1,0,0,E1,M1
I1,P1,0,0,E2,M2
I2 ...
....

Je souhaite donc concaténer les enregistrements pour les rendre mieux
présentables sur l'état, :

I1,P1,L1,V1,E1,M1
I1,P1,0,0,E2,M2
I2 ...
...

d'autant qu'en règle générale j'ai seulement deux enregistrements par
champs "Index, Partie" et donc après concaténation voulue

I1,P1,L1,V1,E1,M1
I2,P2,L2,V2,E2,M2
I3 ...

Qui a une idée, en concervant deux tables distinctes bien sûr ? merci

J'ajoute que j'avais essayé une requête sélection avec jointure entre
les deux tables sur les champs communs, mais selon qu'elle soit à
droite ou à gauche, elle me complète les valeurs de "longueur, valeur"
ou "Epaisseur, Montant" là ou les valeurs devraient être nulles.Les
sommes sont érronées.

R. PAIRE

1 réponse

Avatar
3stone
Bonjour aussi,

"R. Paire"
Je souhaiterais dans un état, "juxtaposer" les données issues de deux
tables. Je m'explique :

Table 1 : Index, partie, longueur, valeur
Table 2 : Index, partie, Epaisseur, Montant

pour afficher Index, partie, longueur, valeur, Epaisseur, Montant et
faire des sommes desvaleurs numériques longueur,valeur, Epaisseur et
Montant

<snip>


J'ajoute que j'avais essayé une requête sélection avec jointure entre
les deux tables sur les champs communs, mais selon qu'elle soit à
droite ou à gauche, elle me complète les valeurs de "longueur, valeur"
ou "Epaisseur, Montant" là ou les valeurs devraient être nulles.Les
sommes sont érronées.



Les deux tables possède bien une relation par leur champ index ?

Une simple requête, sur les deux tables, en créant cette jointure
devrait donner le résultat attentu...

Pour les erreur de calcul, en cas de champ vide, utilise la fonction Nz

Nz(champ1) * Nz(champ2)


De rien...


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------