Ôpa! Obrigada gente!  (:

Consegui.



- Tathynanna

2015-11-17 12:20 GMT-02:00 Rodrigo Mufalani [email protected]
[oracle_br] <[email protected]>:

>
>
> Bom dia,
>
>    Desculpe minha cara, você estava precisando da diferença em horas
> minutos e segundos. Uma breve pesquisa no google me levou ao resultado
> https://community.oracle.com/thread/3561410:
>
> with t as (select to_date('11/17/2015 06:37:12 AM', 'MM/DD/YYYY HH:MI:SS
> AM','NLS_DATE_LANGUAGE=''AMERICAN''') as dt1
>                      ,to_date('11/17/2015 09:00:52 AM', 'MM/DD/YYYY
> HH:MI:SS AM','NLS_DATE_LANGUAGE=''AMERICAN''') as dt2
>                from dual
>               )
>     select floor(diff_days*24) as hrs
>           ,floor(mod(diff_days*24,1)*60) as mins
>         ,floor(mod(diff_days*24*60,1)*60) as seconds
>  from   (select dt2-dt1 as diff_days from t)
>
>
>        HRS    MINS   SECONDS
> ---------- ---------- ----------
>          2         23         39
>
>   Ou se preferir já formatado:
>
> with t as (select to_date('11/17/2015 06:37:12 AM', 'MM/DD/YYYY HH:MI:SS
> AM','NLS_DATE_LANGUAGE=''AMERICAN''') as dt1
>                      ,to_date('11/17/2015 09:00:52 AM', 'MM/DD/YYYY
> HH:MI:SS AM','NLS_DATE_LANGUAGE=''AMERICAN''') as dt2
>                from dual
>               )
>   select
> floor(diff_days*24)||':'||floor(mod(diff_days*24,1)*60)||':'||floor(mod(diff_days*24*60,1)*60)
> as diferenca
>  from   (select dt2-dt1 as diff_days from t);
>
> Obs.: A query do cara lá tinha uma particularidade e eu já resolvi
> colocando o NLS_DATE_FORMAT dentro do to_date, senão dá erro.
>
>
> Atenciosamente,
>
>
> Em 17/11/2015, à(s) 11:42, angelo [email protected] [oracle_br] <
> [email protected]> escreveu:
>
> A partir daí cria uma função do tipo "diffdatetime" e incrementa a sua
> base.
>
> 2015-11-17 11:36 GMT-02:00 Rodrigo Mufalani [email protected]
> [oracle_br] <[email protected]>:
>
> >
> >
> > Bom dia,
> >
> > Segue uma query para isso:
> >
> > select 24 * (to_date('17/11/2015 09:00', 'DD/MM/YYYY hh24:mi')
> > - to_date('17/11/2015 07:20', 'DD/MM/YYYY hh24:mi')
> > ) horas
> > from dual
> > /
> >
> > Obs.: Se passar a data mais atual por ultimo o resultado dá negativo, mas
> > você pode usar a função ABS para resolver isso.
> >
> >
> > Atenciosamente,
> >
> >
> > Em 17/11/2015, à(s) 11:24, Tathyanna Pelegrinni [email protected]
> > [oracle_br] <[email protected]> escreveu:
> >
> >
> > Olá!
> >
> > Alguem tem uma função já pronta em q eu passe duas datas (data_ini e
> > data_fim )e a função retorna em horas:min:ss o tempo transcorrido entre
> > elas?
> >
> >
> > Obrigada
> >
> >
> > - Tathyanna
> >
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]

Responder a