Select Sum(Distinct) avec Access

js8bleu Messages postés 624 Statut Membre -  
OlivrT Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je suis sous access 2003 et j'ai une table recu(numrecu,daterecu,montanttotal,numvente) et une table vente (numvente,datevente,numclient,...). J'aimerai avoir le total de tous les recus d'un client x.
SELECT sum(R.montanttotal) FROM trecu R, tvente V WHERE R.numvente = (SELECT R.numvente FROM trecu R, tvente V WHERE V.numvente AND V.numclient = x);


me donne l'erreur :
Cette sous-requête peut retourner au plus un enregistrement.


NB : un client peut avoir plusieurs reçu pour une même vente, ce qui veut dire que le montant total des reçus d'une même vente peut se répéter plusieurs fois.

Merci d'avance pour votre aide.

Cordialement.

1 réponse

  1. OlivrT Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   36
     
    bonjour,
    je suppose que le "x" que vous avez écrit est l'identifiant de votre client ?
    Donc :

    SELECT sum(R.montanttotal) FROM recu R INNER JOIN vente V ON R.numvente= V.numvente WHERE V.numclient = x;

    ou, par client, j'ai supposé que le nom du client serait "NomClient"

    SELECT sum(R.montanttotal) TotalCli,
    C.NomClient
    FROM recu R INNER JOIN vente V ON R.numvente= V.numvente
    INNER JOIN client C ON V.numclient = C.numclient
    GROUP BY C.NomClient;

    ;-)
    0