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

Langage SQL Discussion :

Problème avec nombre d'enregistrements dans une table


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 193
    Points : 58
    Points
    58
    Par défaut Problème avec nombre d'enregistrements dans une table
    bonjour,
    j'ai un tableau de 3 colonnes dans la 1 colonne il m'affiche les tranges d'age
    la 2 colonne il affiche pour chaque tranche d'age son le nb appel.

    à la dernière ligne du tableau on a le nombre total des appels à partir de là qu'on peux calculer la taux d'appel de chaque tranche d'age par rapport au nombre total des appels on utilisant la formule
    taux=(100*nbappel)/totalnbappel
    la requete utilisée :

    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $query = "SELECT trancheage,COUNT(*) as nbappel 
    FROM personne_appelante p, age 
    where p.idtrancheage=age.idtrancheage 
    and dat_appel between '$ddeb' AND '$dfin'  
    GROUP BY trancheage;";
    mon problème:
    j'utilise une boucle while qui permet de calculer le nbtotal des appels, donc ce fameux taux il le calcule au meme temps ce qui n'est pas une bonne idée, car à la première itteration de la boucle le nbtotal des appels =nbappel ce qui fait le taux est faux. j'ai essayé de calculer le nbtotal des appels à l'exterieur de la boucle ça n'a pas marché.
    est ce ququ'on peut calculer ce taux à partir d'un champ calculé ?

    merci de toute intervention!

  2. #2
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    SELECT 	trancheage,
    	nbappel,
    	(100 * nbappel) / total
    FROM
    (
    SELECT	a.trancheage,
    	COUNT(*) AS nbAppel,
    	(SELECT COUNT(*) FROM PersonneAppelante WHERE dateappel BETWEEN '$ddeb' AND '$dfin' ) AS total
    FROM 	PersonneAppelante p
    INNER JOIN Age a
    ON	p.idtrancheage = a.idtrancheage 
    WHERE	p.dateappel BETWEEN '$ddeb' AND '$dfin'  
    GROUP BY a.trancheage,
    	total
    ) AS tmp;

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    merci de votre réponse,

    ce que je n'ai pas compris c'est koi tmp?
    merci

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    je n'ai pas utilisé ta requete, je trouve qu'elle est trop compliquée, mais j'ai résolu le problème en utilisant une autre requête avant l'éxecution de celle que j'ai posté por avoir le total des appels par rapport aux tranches d'ageet la voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $req="SELECT * FROM personne_appelante p, age 
    where p.idtrancheage=age.idtrancheage 
    and dat_appel between '$ddeb' AND '$dfin'";
    merci !!

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

Discussions similaires

  1. Compter le nombre d'enregistrement dans une table selon un critere
    Par Angelo91 dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 18/08/2008, 12h05
  2. Nombre d'enregistrement dans une table
    Par mulot49 dans le forum Requêtes
    Réponses: 2
    Dernier message: 20/12/2007, 14h55
  3. limiter le nombre d'enregistrements dans une table
    Par Vincent_59 dans le forum Modélisation
    Réponses: 8
    Dernier message: 09/07/2007, 10h01
  4. [SQL] Problème avec nombre d'enregistrements dans une table
    Par zana74 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 14/08/2006, 13h28
  5. Nombre d'enregistrement dans une table MySQL
    Par tom06440 dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 21/10/2005, 19h07

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