PDA

Ver la Versión Completa : Convertir segundos en formato hh:mm:ss


jars
03-09-2014, 15:48:03
Hola amigos estoy trabajando con Firebird 2.5 y utilizo la siguiente instrucción para la conversión:

select dateadd(second, 186399, cast('00:00:00' as time)) from rdb$database

pero en lugar de devolverme 51:46:39 me trae 03:46:39
Ya se que el formato es de 24 horas pero lo necesito para mostrar en ese formato el tiempo acumulado durante un período largo, pej. 235:46:22
Gracias

ecfisa
03-09-2014, 16:18:55
Hola jars.

Es que no creo que puedas evitar el formato trabajando con el tipo TIME...

Sin embargo se me ocurre que podrias hacer:

SELECT CAST(CAST(:SECS AS INTEGER)/3600 AS VARCHAR(8)) ||':'||
CAST(MOD(CAST(:SECS AS INTEGER),3600)/60 AS VARCHAR(8)) ||':'||
CAST(MOD(MOD(CAST(:SECS AS INTEGER),3600),60) AS VARCHAR(8)) AS LAPSO
FROM RDB$DATABASE


Saludos :)

jars
03-09-2014, 17:04:18
Gracias Ecfisa, funciona bien.