Ben si vous continuez a ne pas utiliser les balises, on va finir par se fâcher...Envoyé par tounsi
![]()
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 !Envoyé par tounsi
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]
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.
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
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
Pourriez vous me dire quelle est l'utilité d'un tel travail...
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
Partager