Carlos

Só complementando... se o datatype for TIMESTAMP (ao invés de DATE), a
diferença dos valores resulta em tipo INTERVAL (já num formato próximo ao
que estamos acostumados para horas e minutos).

[ ]

André


Em 31 de julho de 2014 13:57, 'Carlos Pinto' carlos.pin...@yahoo.com.br
[oracle_br] <oracle_br@yahoogrupos.com.br> escreveu:

>
>
> Obrigado Chiappa, vou testar.
>
>
>
>
>
> Carlos
>
>
>
> *De:* oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br]
> *Enviada:* 31 de julho de 2014 17:56
> *Para:* oracle_br@yahoogrupos.com.br
> *Assunto:* [oracle_br] Re: Calculo Horas - Oracle 10g
>
>
>
>
>
> É ** trivial **, sabendo-se que a aritmética entre dates no Oracle te dá
> um valor numérico que representa qtdade de dias E que um dia tem 24 horas,
> 1 hora tem 60 mins e um min tem 60 segs :
>
> SYS:AS SYSDBA:SQL>set serveroutput on
> SYS:AS SYSDBA:SQL>DECLARE
>    v_data_ini DATE := to_date('01/01/2014 10:00:00', 'dd/mm/yyyy
> hh24:mi:ss');
>    v_data_fim DATE := to_date('03/01/2014 11:30:20', 'dd/mm/yyyy
> hh24:mi:ss');
> BEGIN
>    dbms_output.put_line(
>        'Dias:'   || trunc( v_data_ini - v_data_fim ) ||
>        ',Horas:' || trunc( mod( (v_data_ini - v_data_fim)*24, 24 ) )    ||
>        ',Mins :' || trunc( mod( (v_data_ini - v_data_fim)*24*60, 60 ) ) ||
>        ',Segs :' || trunc( mod( (v_data_ini-v_data_fim)*24*60*60, 60 ) )
>                        );
> END;
> /
>
> Dias:-2,Horas:-1,Mins :-30,Segs :-19
>
> PL/SQL procedure successfully completed.
>
> EVIDENTEMENTE :
>
>  -> quando vc tira um valor maior de um valor menor vc obtém um Negativo :
> se for o caso, Inverter a ordem na subtração...
>
>  -> se só te interessa horas, minutos e segundos, simplesmente Adicione
> nas duas datas um dia/mês/ano arbitrário qualquer, sempre o mesmo, E não
> use a lógica de DIAS
>
>  []s
>
>    Chiappa
>
>  
>
  • [oracle_br] Calculo ... 'Carlos Pinto' carlos.pin...@yahoo.com.br [oracle_br]
    • [oracle_br] Re:... jlchia...@yahoo.com.br [oracle_br]
      • RE: [oracle... 'Carlos Pinto' carlos.pin...@yahoo.com.br [oracle_br]
        • Re: [or... Andre Santos andre.psantos...@gmail.com [oracle_br]
          • Re:... Fabricio Pedroso Jorge fpjb...@gmail.com [oracle_br]

Responder a