Estou precisando de uma ajuda... estou desenvolvendo um relatório que preciso mostrar o período entre duas datas (pode ser em horas ou minutos, tanto faz). tenho dois campos e estou fazendo uma subtração entre eles, mas o valor está saindo de uma forma que não estou entendendo:
Apenas para esclarecer: O resultado que você havia encontrado na sua subtração, ,0738310185185185185185185185185185185185, é o resultado em dias, ou seja 0,07 dias.
Multiplicando por 24 (24 horas do dia) nos trouxe o valor em horas.
Multiplicando por 1440 (1440 minutos do dia) nos trouxe o valor em minutos.
Multiplicando por 86400 (86400 segundos do dia) nos trouxe o valor em segundos.
select extract(hour from (datahorafinal- datahorainicial) day to second) +
round(extract(minute from (datahorafinal- datahorainicial)day to second)/60,2)
from table;