Discussion: Requête du total reste d'un client [AC-2013]

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    octobre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : octobre 2012
    Messages : 29
    Points : 16
    Points
    16

    Par défaut Requête du total reste d'un client

    Nom : requete SQL.PNG
Affichages : 46
Taille : 10,0 Ko

    Bonjour

    je cherche une requête access qui me permet d'afficher la somme du reste pour chaque client si le total des restes est > 0 sur une seule ligne.
    j'ai utilisé : SELECT [Nom], Sum(Payé), Sum(Reste) , cela m'affiche les sommes sur deux lignes.
    Par exemple le client X a deux valeurs comme reste : 50 et -20 , je veux avoir la somme 30 sur une seule ligne.

    Merci de votre aide

  2. #2
    Membre expert
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    2 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 2 227
    Points : 3 793
    Points
    3 793

    Par défaut

    bonsoir,
    SELECT [Nom], Sum(Payé), Sum(Reste)
    sur quel(s) champ(s) est fait le GROUP BY ?
    car le code ci-dessous devrait donner le bon résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT [Nom], Sum(Payé), Sum(Reste) from tatable GROUP BY [Nom]

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    octobre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : octobre 2012
    Messages : 29
    Points : 16
    Points
    16

    Par défaut

    Merci de votre réponse

    je n'ai pas utilisé de (GROUP BY), mais même si j'utilise (GROUP BY), j'obtient les clients qui ont un reste égale à zéro aussi

    SELECT Nom, Sum(Payé), Sum(Reste) FROM Table WHERE Reste <> 0 group by Nom

    Même les clients qui ont un reste égale à zero sont affichés

    Nom : Capture.JPG
Affichages : 33
Taille : 24,5 Ko

  4. #4
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    octobre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : octobre 2012
    Messages : 29
    Points : 16
    Points
    16

    Par défaut

    Citation Envoyé par naahou2000 Voir le message
    Merci de votre réponse

    je n'ai pas utilisé de (GROUP BY), mais même si j'utilise (GROUP BY), j'obtient les clients qui ont un reste égale à zéro aussi

    SELECT Nom, Sum(Payé), Sum(Reste) FROM Table WHERE Reste <> 0 group by Nom

    Même les clients qui ont un reste égale à zero sont affichés

    Nom : Capture.JPG
Affichages : 33
Taille : 24,5 Ko
    j'ai oublié de signaler que j'utilise ces requêtes dans VB.Net

  5. #5
    Membre expert
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    2 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 2 227
    Points : 3 793
    Points
    3 793

    Par défaut

    bonjour,
    j'ai oublié de signaler que j'utilise ces requêtes dans VB.Net
    et pourquoi ne pas poster dans le forum VB.NEt ?
    sinon pour la clause WHERE Reste <> 0 cela ne teste que ligne par ligne il faut utiliser HAVING qui teste une fois la somme effectuée.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nom, Sum(Payé), Sum(Reste) FROM Table HAVING sum(Reste) <> 0 group by Nom

  6. #6
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    octobre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : octobre 2012
    Messages : 29
    Points : 16
    Points
    16

    Par défaut

    Citation Envoyé par tee_grandbois Voir le message
    bonjour,

    et pourquoi ne pas poster dans le forum VB.NEt ?
    sinon pour la clause WHERE Reste <> 0 cela ne teste que ligne par ligne il faut utiliser HAVING qui teste une fois la somme effectuée.
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nom, Sum(Payé), Sum(Reste) FROM Table HAVING sum(Reste) <> 0 group by Nom
    Merci infiniment de votre aide, j'ai posté sur le forum d'access parce que je cherche une requête access, dans le forum de VB.net j'aurai certainement la même remarque de poster sur le forum d'access.
    La requête qui a fonctionné est la suivante, j'ai inversé le (HAVING) et le (GROUP BY).
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT  Nom, Sum(Payé), Sum(Reste) FROM Table GROUP BY Nom HAVING Sum(Reste)>0

    Merci c'est résolu

  7. #7
    Membre expert
    Avatar de tee_grandbois
    Homme Profil pro
    retraité mais encore activé
    Inscrit en
    novembre 2004
    Messages
    2 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité mais encore activé

    Informations forums :
    Inscription : novembre 2004
    Messages : 2 227
    Points : 3 793
    Points
    3 793

    Par défaut

    bonsoir,
    j'ai inversé le (HAVING) et le (GROUP BY)
    Oui, désolé pour l'inversion. C'est marrant, j'ai justement résolu une autre discussion en faisant remarquer que les 2 étaient inversés, comme quoi ...

    Pour marquer la discussion comme résolue il faut appuyer sur le bouton en bas de la discussion.
    Merci.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    octobre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : octobre 2012
    Messages : 29
    Points : 16
    Points
    16

    Par défaut

    Citation Envoyé par tee_grandbois Voir le message
    bonsoir,

    Oui, désolé pour l'inversion. C'est marrant, j'ai justement résolu une autre discussion en faisant remarquer que les 2 étaient inversés, comme quoi ...

    Pour marquer la discussion comme résolue il faut appuyer sur le bouton en bas de la discussion.
    Merci.
    OK

    désolé

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 01/09/2016, 18h37
  2. Réponses: 0
    Dernier message: 22/08/2012, 14h26
  3. [1.x] fonctionnement d'un web service REST avec le client
    Par safa.nasich dans le forum Symfony
    Réponses: 0
    Dernier message: 29/06/2011, 16h33
  4. Réponses: 5
    Dernier message: 08/11/2010, 10h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo