Calcule d'un champ

keddada -  
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai un problème, tous simplement voila un exemple pour comprendre :

Table A
COD (clé sans doublons)
FRNS
DETAIL
Prix

Table B
N° (clé)
COD (COD1,COD2,COD1,COD1,COD2,COD2,.....,CODn: avec doublons)
DATE
MONTANT

Relation Table A [COD](1)--------> Table B [COD](n)

Problème : je veut créer une requête :

Requête A_B
COD (Table A)
FRNS (Table A)
Prix (Table A)
N° (Table B)
Montant_Glob <<<< =la somme de MONTANT si trouvé au (Table B) pour chaque CODn, sinon =0

2 réponses

Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Bonjour,

Premier point, j'ai un problème dans le résultat que tu souhaites obtenir, à cause du champ N° (table B). S'il y a plusieurs lignes pour le COD en question dans la table b, quel numéro doit on mettre ?

Si on ignore ce N°, essaie une requête de ce genre :
SELECT a.COD, a.FRNS, a.Prix, SUM(b.MONTANT)
FROM TableA a
LEFT OUTER JOIN TableB b ON a.COD = b.COD
GROUP BY a.COD, a.FRNS, a.Prix


Xavier
0
keddada
 
Bonjour Xavier,
Merci,

Relation : 1 COD (table A)------> 0 à n COD (table B)

Pour les lignes COD de table B, tous, je veut avoir la somme MONTANT de la table B pour chaque COD de la table A. Si par exemple un COD de la table A ne figure pas dans la table B la somme =0, sinon la somme = les montants des même numéro COD de la table B.
merci
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Bonjour,

Oui, ça c'est bon (cf la requête que je propose).
Par contre, je ne peux pas te donner le champ N° comme tu le demandes, car cela n'a pas de sens puisqu'on agrège les lignes de tableB.

Xavier
0