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

Calculer la durée moyenne


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    septembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 12
    Points : 12
    Points
    12
    Par défaut Calculer la durée moyenne
    Bonjour tout le monde,

    Je dois Calculer la durée moyenne de résolution des incidents. La durée de résolution de chaque incident est stockée dans la base de données en chaine de caractère sous cette forme de :
    12 jours 2 heures 21 minutes 26 secondes

    sachant qu'il y a des durées de résolution sous cette forme :

    4 heures 54 minutes 47 secondes
    3 minutes 23 secondes
    30 secondes

    Je voudrais extraire les jours,les heures,les minutes,et les seconde séparement pour faire la moyenne de chaque unité et puis les concaténer dans une seule chaine de caractère. Mais je n'y arrive pas.

    Si vous avez une idée de comment proceder !!

    Merci d'avance.

  2. #2
    Membre actif
    Profil pro
    Développeur Web
    Inscrit en
    octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : octobre 2006
    Messages : 251
    Points : 292
    Points
    292
    Par défaut
    tu peut faire comme ça:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $v = "12 jours 2 heures 21 minutes 26 secondes";
    list($nb_jour, $nb_heure, $nb_min, $nb_sec) = sscanf($v,'%d jours %d heures %d minutes %d secondes');
    Après tu adapte pour tous tes cas possible, puis fu fait la moyenne (tu convertis le tous en secondes)

  3. #3
    Membre à l'essai
    Inscrit en
    septembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Merci benji07 pour cet element de réponse.

    je vais essayer ça et je te réponds
    Merci encore.

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2002
    Messages : 1 060
    Points : 1 335
    Points
    1 335
    Par défaut
    Bonjour,

    Citation Envoyé par aelarbaoui Voir le message
    La durée de résolution de chaque incident est stockée dans la base de données en chaine de caractère sous cette forme de :
    12 jours 2 heures 21 minutes 26 secondes
    Utiliser ce format de stockage en sachant qu'il faudra faire des calculs sur cette colonne n'est certainement pas la meilleure idée qui soit. Tu ferais mieux de stocker des secondes, et un simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT AVG(laColonne) as moyenne
    FROM laTable
    te donnera la moyenne que tu recherche. Ensuite, tu calcules en php les jours, heures, minutes et secondes sur le résultat de la requête.

  5. #5
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    EURL CIEPTAL CARS
    Inscrit en
    mars 2006
    Messages
    1 933
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Algérie

    Informations professionnelles :
    Activité : EURL CIEPTAL CARS
    Secteur : Transports

    Informations forums :
    Inscription : mars 2006
    Messages : 1 933
    Points : 3 319
    Points
    3 319
    Par défaut
    Citation Envoyé par jeca Voir le message
    Bonjour,



    Utiliser ce format de stockage en sachant qu'il faudra faire des calculs sur cette colonne n'est certainement pas la meilleure idée qui soit. Tu ferais mieux de stocker des secondes, et un simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT AVG(laColonne) as moyenne
    FROM laTable
    te donnera la moyenne que tu recherche. Ensuite, tu calcules en php les jours, heures, minutes et secondes sur le résultat de la requête.
    salut.

    pour calculer une moyenne on devrais le faire sur la base d'une unité, alors il est impératif d'extraire toutes les valeurs pour faire les conversions nécessaire.

    @+

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/08/2013, 18h36
  2. Réponses: 8
    Dernier message: 22/05/2008, 16h05
  3. Calcul d'une durée moyenne
    Par Aurazed dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/07/2007, 08h40
  4. Problème dans le calcul des normales moyennes,
    Par MaxPayne dans le forum OpenGL
    Réponses: 1
    Dernier message: 12/04/2005, 17h50
  5. Calculer une duree entre 2 dates
    Par d.w.d dans le forum C++
    Réponses: 7
    Dernier message: 02/03/2005, 22h39

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