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 :

somme de variables de type date


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 67
    Par défaut
    il ne faut surtout pas vous faché :))

  3. #3
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Citation Envoyé par tounsi
    il ne faut surtout pas vous faché )
    Ben si vous continuez a ne pas utiliser les balises, on va finir par se fâcher...

  4. #4
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    Citation Envoyé par tounsi
    this one works fine
    Ca doit être un effet secondaire non documenté de l'arithmétique des dates... en cas d'addition, on se couvre de pustules et on commence à dire des choses incohérentes en anglais !

  5. #5
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 20
    Par défaut
    Mr Tounsi ta colonne source d'extraction est de quel type? ainsi que ta colonne cible?
    Si la cible est number tu doit utiliser to_number (...) pour convertir tes données en isertion et non en extraction.


    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
     
     DECLARE
        CURSOR c_SUM_DATE IS SELECT  to_char(sysdate,'sssss') SecDat              from dual
         where sysdate BETWEEN SYSDATE-3600 and SYSDATE+3600;
        nSum$Date NUMBER;
        RecSumDate c_SUM_DATE%ROWTYPE;
      BEGIN
        IF NOT c_SUM_DATE%ISOPEN THEN
          OPEN c_SUM_DATE;
        END IF;
        LOOP
            FETCH c_SUM_DATE INTO RecSumDate;
              EXIT WHEN c_SUM_DATE%NOTFOUND;
            nSum$Date := to_number(RecSumDate.SecDat)*12;
            DBMS_OUTPUT.put_line(nSum$Date);
     
          /*
          **
          ** INSERT INTO EMP(EMPNO) VALUES (nSum$Date*366)
          ** WHERE deptno IN (SELECT deptno from dept);
          **
          */
         END LOOP;
       EXCEPTION
        WHEN NO_DATA_FOUND THEN
          DBMS_OUTPUT.Put_Line('No DATA FOUND');
        END;
     /
     
    PL/SQL procedure successfully completed.
     
    SQL> set serveroutput on
    SQL> /
    83448
     
    PL/SQL procedure successfully completed.
    [/code]

  6. #6
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    ouais, tu te doutes bien que HH24 ne peut pas contenir plus que 24 heures, non?

    regarde le type "intervale" ou alors, écrit ta fonction plsql pour transformer des secondes en HH99999:MI:SS

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 67
    Par défaut
    oé les copin solution trouvé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT 
    TO_CHAR(TRUNC(SUM(TO_CHAR(to_date(total_wor, 'HH24:MI:ss'),'sssss'))/3600)) || ':' 
    || TO_CHAR(TRUNC(MOD(SUM(TO_CHAR(to_date(total_wor, 'HH24:MI:ss'),'sssss')), 3600)/60)) || ':' 
    || TO_CHAR(MOD(SUM(TO_CHAR(to_date(total_wor, 'HH24:MI:ss'),'sssss')), 60)) 
    FROM works;

    et j'ai un résulat : 0:2:51 comme je veut

    merci comme même a tous de votre aide

  8. #8
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 20
    Par défaut
    Pourriez vous me dire quelle est l'utilité d'un tel travail...

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 67
    Par défaut
    c'est du code ajouter dans java
    donc je ne suis pas entrain de manipuler seulement du sql ou du oracle, et j'ai d'autre contrainte a respecter et a faire le lien avec

    c'est pour ca que ca vous parait peut etre béte d'utiliser un varchar pour une date ou autre
    mais j'ai d'autres raison dériére

    en tous cas merci pour les personnes sui se sont cassé la téte et m'ont aider

Discussions similaires

  1. Problème dans le stockage d'une variable de type Date
    Par Pentos60 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/03/2011, 20h39
  2. Réponses: 4
    Dernier message: 04/09/2009, 12h07
  3. Réponses: 2
    Dernier message: 22/04/2009, 10h47
  4. [AC-2007] Variable de type date
    Par Chris 81 dans le forum VBA Access
    Réponses: 15
    Dernier message: 19/04/2009, 10h03
  5. comment declarer une variable de type date ?
    Par MAJIK_ENIS dans le forum JDBC
    Réponses: 1
    Dernier message: 26/05/2006, 00h02

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