IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

requête de comptage +pourcentage


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 8
    Points : 7
    Points
    7
    Par défaut requête de comptage +pourcentage
    Bonjour à tous,

    j'ai trouvé des probleme similaires sur le forum seulement je nai pas réussi à régler le mien.
    J'ai une base de données avec une seule table, celle ci regroupe toutes les commandes passés par mes clients.

    Dans cette table il ya un champ Texte qui me dit si le client et un professionnel ou un particulier.
    Oui si c'est un professionnel, Non si c'est un particulier.

    Pour l'instant j'arrive seulement à afficher le nombre de commandes par professionnels et par particuliers.
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT [lignes_commandes_12-05-2008_07-].[BAT ?], Count([lignes_commandes_12-05-2008_07-].[BAT ?]) AS [CompteDeBAT ?]
    FROM [lignes_commandes_12-05-2008_07-]
    GROUP BY [lignes_commandes_12-05-2008_07-].[BAT ?], [lignes_commandes_12-05-2008_07-].[Numérique ?]
    HAVING ((([lignes_commandes_12-05-2008_07-].[BAT ?]) Is Not Null) AND (([lignes_commandes_12-05-2008_07-].[Numérique ?])="oui"));
    J'aimerai en avoir le pourcentage.
    ma table s'apelle : lignes_commandes_12-05-2008_07-
    mon champ :BAT ?

    Merci d'avance

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 046
    Points
    34 046
    Billets dans le blog
    14
    Par défaut


    Ta requête te donne le nombre de lignes par [BAT ?] pour les lignes où [Numérique ?] = "oui".
    La requête suivante va te donner le nombre total de lignes de la table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT COUNT(*) AS Nombre Total
    FROM [lignes_commandes_12-05-2008_07-]
    Tu n'as plus qu'à calculer le rapport !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    Merci de ta reponse rapide,
    Mais je voudrai calculer ce rapport dans une requête.

    J'ai fais une interface ou sont affichés dans une zone de liste :
    Professionnel : 300
    Particuliers : 180

    Comment faire pour afficher le pourcentage
    Professionnel : 62.5%
    Particuliers : 37.5%

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 046
    Points
    34 046
    Billets dans le blog
    14
    Par défaut
    Quelque part dans le rapport, tu peux avoir une zone de texte cachée qui contiendra le total de lignes de la table en lui appliquant la formule donnée plus haut.
    Ensuite dans la zone de texte qui doit afficher le pourcentage, tu saisis le calcul : = [Compte de BAT ?] * 100 / Me.[Nombre total]
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    salut CinePhil et bienvenu khilim,

    voici la sql qui te permet d'avoir le pourcentage en fonction de [BAT ?] et [Numérique ?] de ta requete précédente:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT
     
    [lignes_commandes_12-05-2008_07-].[BAT ?],
    Count([lignes_commandes_12-05-2008_07-].[BAT ?]) AS [CompteDeBAT ?],
    format([CompteDeBAT ?]/DCount('*','[lignes_commandes_12-05-2008_07-]'),"0.00%") as pourcentage
     
    FROM [lignes_commandes_12-05-2008_07-]
    GROUP BY [lignes_commandes_12-05-2008_07-].[BAT ?], [lignes_commandes_12-05-2008_07-].[Numérique ?]
    HAVING ([lignes_commandes_12-05-2008_07-].[BAT ?]) is not null AND (([lignes_commandes_12-05-2008_07-].[Numérique ?])="oui");
    soit plus précis dans tes explications:
    Citation Envoyé par khilim
    Dans cette table il ya un champ Texte qui me dit si le client et un professionnel ou un particulier.
    Oui si c'est un professionnel, Non si c'est un particulier.
    ce qui suppose que [Numérique ?] serait ce champ mais tu fais un groupement AUSSI sur [BAT ?]
    alors comment veux tu avoir:
    Citation Envoyé par khilim
    Comment faire pour afficher le pourcentage
    Professionnel : 62.5%
    Particuliers : 37.5%
    deux résultat?
    pour obtenir ce dernier c'est une autre requete qu'il te faut.
    mais je te laisse la trouver en simplifiant la sql que je viens de poster.


Discussions similaires

  1. [AC-2003] Requête avec comptage
    Par ovett dans le forum Access
    Réponses: 0
    Dernier message: 08/06/2009, 17h05
  2. [AC-2002] Requête de comptage
    Par pc75 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 17/04/2009, 13h32
  3. [A-03] Requête et comptage
    Par nico69100 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 11/01/2009, 15h50
  4. Requête avec comptage
    Par Arsene12 dans le forum WinDev
    Réponses: 4
    Dernier message: 16/04/2008, 14h26
  5. Requête de comptage. Problème de mise en forme
    Par ksper92 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/12/2006, 15h17

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