Pular para o conteúdo

Fóruns SQL e PL/SQL Select que retorna horas Select que retorna horas

#89252
Rodrigo Mesquita
Participante

    [quote=”LeloStyle”:2fziic87]Bom dia pessoal,

    Querendo agradecer mas uma vez por todas as ajudas aqui no forum, vamos lá.
    Estou com um select que realiza a contagem de horas ralativa a cada atividade desempenhada no mês, mas acontece que no select não ta retornando a hora da maneira que stá na base. Ex : na base está 01/08/2009 04:30:00 , ai no select me retorna assim 4 horas. estou fazendoo assim, se alguém puder me dar uma força:

    select Trunc(Sum(((To_Number(to_char(b.qtde_horas,'hh24'))/24 + To_Number(to_char(b.qtde_horas,'mi'))/60/24)) * 24)) hora_mes,
    b.cd_analista,
    a.cd_os,
    decode(b.motivo,'A','Análise','D','Desenvolvimento','T','Teste','C','Correção','CH','Correção Homologação','TC','Teste Correção'),
    b.data_inicio,
    1 qtde_os

    from fbr_ocorrencia a,
    fbr_ocorrencia_analista b

    where to_char(b.data_inicio,'mm/rrrr') = :p_data
    and a.cd_ocorrencia = b.cd_ocorrencia
    group by b.cd_analista, a.cd_os, b.data_inicio, b.motivo
    order by b.data_inicio;
    [/quote]

    Lelo,

    O melhor é vc criar um função e dentro dela transformar a hora para segundos, fazer o calculo e depois passar para hora/min/seg de novo.
    ai depois pega essa funcao e coloca como coluna do select.