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

VB.NET Discussion :

Avoir le resultat de datediff en jours heures minutes²


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut Avoir le resultat de datediff en jours heures minutes²
    Bonjour,

    Je sais faire la différence entre deux dates(04/03/2010 11:58:50 et 10/03/2010 10:47:24) en vb.net pour obtenir un résultat soit en jours, heures ou minutes.

    Mais je cherche à obtenir ce résultat en jours, heure, minutes(ex: oj 1h 3mn)

    Si quelqu'un a une solution, je suis preneur...

    Merci d'avance.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonjour,

    Je ne suis pas sur de bien comprendre ...

    Si vous pouvez obtenir le résultat en minutes alors la division euclidienne par 60 vous donnera le nombre d'heures, le reste étant les minutes. Puis la division euclidienne des heures par 24 vous donnera le nb de jours, le reste le nombre d'heures.
    Exemple : 34 637 minutes = 577 heures et 17 min
    577 heures = 24 jours et 1 h

    donc

    34 637 min = 24 j 1 h 17 min

    A+

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 94
    Par défaut
    Bonjour,

    Je supposes que tu veux que ce soit directement ta requête qui te donne le résultat en jours, heures, minutes.

    J'ai une solution. Elle est pas très belle (j'ai écrit cela très rapidement), mais elle a le mérite de marcher.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT 
    DATEDIFF(minute, HeureDepart, HeureArrivee) as MinutesTotales,
    DATEDIFF(minute, HeureDepart, HeureArrivee) / (24 * 60) as Jours,
    (DATEDIFF(minute, HeureDepart, HeureArrivee) - (24 * (DATEDIFF(minute, HeureDepart, HeureArrivee) / (24 * 60)))) /60 as Heures,
    DATEDIFF(minute, HeureDepart, HeureArrivee) - (60 * ((DATEDIFF(minute, HeureDepart, HeureArrivee) - (24 * (DATEDIFF(minute, HeureDepart, HeureArrivee) / (24 * 60)))) /60)) as Minutes 
    FROM TaTable
    Tu peux aussi transformer ton temps récupéré (secondes pour l'exemple ci dessous) en date :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT 
    dateadd(s, datediff(second, HeureDepart, HeureArrivee) , 0) as TempsFormeDate
    FROM TaTable
    Tu pourras ensuite récupérer le nombre de jours, heures et minutes, soit dans ton code, soit dans ta requête avec convert.

Discussions similaires

  1. Conversion minutes vers Jour:Heure:minute
    Par jaq dans le forum VBA Access
    Réponses: 10
    Dernier message: 24/09/2009, 17h01
  2. Compte a rebours avec les jours,heurs minutes et secondes.
    Par dad72 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/04/2008, 04h02
  3. Réponses: 12
    Dernier message: 03/01/2007, 13h55
  4. Conversion minutes en jours heures minutes
    Par elsuket dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/11/2006, 04h32
  5. Réponses: 1
    Dernier message: 01/06/2006, 23h12

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