Ô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]
