Bonjour,
Je veux transformer un nombre de minutes en HH:MM
2025 minutes donnerait 33 heures et 45 minute en format 33:45
6025 minutes donnerait 100 heures et 25 minutes en format 100:25
Merci beaucoup!
Bonjour,
Je veux transformer un nombre de minutes en HH:MM
2025 minutes donnerait 33 heures et 45 minute en format 33:45
6025 minutes donnerait 100 heures et 25 minutes en format 100:25
Merci beaucoup!
Si
Me donne comme résultat 100:29 ce qui es OK!
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT Round(6029/60) || ':' || (mod(6029,1440) - (60*Round(mod(6029,1440)/60))) from dual;
Problème si
Me donne 100:-25 au lieu de 100:35???
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT Round(6035/60) || ':' || (mod(6035,1440) - (60*Round(mod(6035,1440)/60))) from dual;
Ce n'est pas la bonne méthode, vu que round fait un arrondi supérieur ou inférieur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 WITH t AS (SELECT 2025 AS MINUTE FROM dual UNION ALL SELECT 6025 FROM dual UNION ALL SELECT 6035 FROM dual ) SELECT MINUTE, TRUNC(MINUTE / 60) heures, MINUTE - 60 * TRUNC(MINUTE/60) minutes FROM t Minute Heure Minutes 2025 33 45 6025 100 25 6035 100 35
Un peu plus court pour les minutes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 WITH t AS ( SELECT 2025 as nb FROM dual UNION ALL SELECT 6025 FROM dual UNION ALL SELECT 6035 FROM dual ) SELECT nb, TRUNC(nb / 60) as heures, mod(nb, 60) as MINUTES FROM t; NB HEURES MINUTES ---------------------- ---------------------- ---------------------- 2025 33 45 6025 100 25 6035 100 35
En effet.
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 Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 Connected as mni SQL> SQL> WITH t AS 2 ( 3 SELECT 2025 AS nb FROM dual UNION ALL 4 SELECT 6025 FROM dual UNION ALL 5 SELECT 6035 FROM dual 6 ), t_tr As 7 (Select nb, numtodsinterval(nb,'MINUTE') dsint 8 From t 9 ) 10 SELECT nb, 11 extract(day from dsint) * 24 + 12 extract(hour from dsint) AS heures, 13 extract(minute from dsint) As Minute 14 FROM t_tr; NB HEURES MINUTE ---------- ---------- ---------- 2025 33 45 6025 100 25 6035 100 35 SQL>
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager