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 MySQL Discussion :

Calcul de moyenne


Sujet :

Requêtes MySQL

  1. #1
    Invité
    Invité(e)
    Par défaut Calcul de moyenne
    Bonjour,
    Je dois faire une moyenne de publication de produits sur une période donnée (voila pour le résumé).
    Partons de l'idée que j'ai 1 client qui publie sur mon site 2 offres.
    Dés qu'un visiteur regarde une offre, j'enregistre en base la date du jour et je somme (toujours en base) le nombre de visite.
    Ce qui me donne en base: id 1/ id_offre 1234 / date 2011-04-01 / nb_visite 82
    Et ce pour chaque offre.
    Mais, il est aussi possible que certains jours, l'offre n'ait pas été vue.

    La question est : En moyenne, combien d'offres ont été publiées sur la période.

    Sur le principe, je sommerais le nombre d'offre sur la période.
    Oui mais ... sur la période, il peut y avoir une offre qui soit dépubliée.

    Prenons par exemple la période du 1 au 30 Juin.
    Du 1 au 15, j'ai deux offres et du 15 au 30 plus qu'une, donc ça me fait une moyenne de 1,5 offres.

    Comment calculer ça avec mysql ?
    Dernière modification par ced ; 23/08/2011 à 11h57. Motif: Orthographe et grammaire + écriture SMS

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Citation Envoyé par christobale Voir le message
    Prenons par exemple la période du 1 au 30 Juin.
    Du 1 au 15, j'ai deux offres et du 15 au 30 plus qu'une, donc ça me fait une moyenne de 1,5 offres.
    Je n'ai pas tout bien compris, mais pour calculer cette dernière valeurs, tu peux sommer le nombre d'offre par jour et diviser le tout par la durée de la période.
    Dans le cas présent, ça fait (2 offres * 15 jours + 1 offre *15 jours) / 30 jours = 1,5 offres par jour.
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Invité
    Invité(e)
    Par défaut
    c'est exactement ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT(date)/(DATEDIFF('2011-05-31','2011-05-01')*COUNT(DISTINCT(id_offre)))*COUNT(DISTINCT(id_offre)) AS moy_nb_offre
    Dernière modification par ced ; 23/08/2011 à 13h20. Motif: Merci d'utiliser la balise [CODE] (bouton #)

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

Discussions similaires

  1. [VBA-E] problème de calcul de moyenne
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 29/04/2006, 17h13
  2. [Oracle] Calcul de moyenne par module
    Par naazih dans le forum Langage SQL
    Réponses: 14
    Dernier message: 27/04/2006, 14h38
  3. Programmation Shell avec Red Hat Calcul de moyenne
    Par jcpoulard dans le forum Linux
    Réponses: 3
    Dernier message: 22/02/2006, 22h08
  4. methode qui calcul une moyenne du traffic
    Par siry dans le forum Développement
    Réponses: 7
    Dernier message: 05/05/2005, 17h16
  5. calculer une moyenne avec une requete externe
    Par allowen dans le forum Langage SQL
    Réponses: 3
    Dernier message: 27/01/2005, 16h02

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