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

 Oracle Discussion :

[BI Answers] obtenir un TIMEDATE propre avec TIMESTAMPDIFF


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Par défaut [BI Answers] obtenir un TIMEDATE propre avec TIMESTAMPDIFF
    Bonjour,

    Je travail avec Oracle BI Answers. J'ai besoin de faire un colonne qui calcule une durée entre 2 dates.

    Donc date 1 - date 2 = résultat

    Je dois afficher mon résultat sous forme : 00:00:00, donc heures:minutes:secondes

    J'ai bidouillé cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Trim(CAST(MOD(TIMESTAMPDIFF(SQL_TSI_HOUR , "Entry Exit List".Entry, "Entry Exit List".Exit),24) AS CHAR))   
    || ':' ||  
    Trim(CAST(MOD(TIMESTAMPDIFF(SQL_TSI_MINUTE , "Entry Exit List".Entry, "Entry Exit List".Exit),60) AS CHAR))   
    || ':' ||  
    Trim(CAST(MOD(TIMESTAMPDIFF(SQL_TSI_SECOND , "Entry Exit List".Entry, "Entry Exit List".Exit),60) AS CHAR))
    Malheureusement cela n'affiche pas de "0" si le nombre est une unité, exemple : 1:2:4, mais cela devrait afficher 01:02:04.

    Savez vous comment faire cela proprement?

    Merci

  2. #2
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Une solution possible est

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    WITH times as
    ( SELECT systimestamp time1, current_timestamp  + INTERVAL '10:30' MINUTE TO SECOND time2
    FROM dual)
     
            SELECT SUBSTR(time1,1,30) "Time1",
           SUBSTR(time2,1,30) "Time2",     
     
           SUBSTR((time2-time1), INSTR((time2-time1),' ')+1,2) ||':'|| 
           SUBSTR((time2-time1), INSTR((time2-time1),' ')+4,2) ||':'||  
           SUBSTR((time2-time1), INSTR((time2-time1),' ')+7,2) DIFF
           from times;

Discussions similaires

  1. Réponses: 7
    Dernier message: 14/12/2007, 09h02
  2. comment obtenir un fichier WSDL avec Eclipse
    Par thomas3 dans le forum Services Web
    Réponses: 6
    Dernier message: 20/12/2006, 09h01
  3. VBA obtenir texte SQL requète avec ADO
    Par cbleas dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 02/08/2006, 15h08
  4. [Sécurité] Obtenir l'url courrante avec $_SERVER
    Par tsing dans le forum Langage
    Réponses: 5
    Dernier message: 18/11/2005, 11h04
  5. Réponses: 17
    Dernier message: 04/04/2005, 17h50

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