Página 1 de 1

Subtrair datas

Enviado: Qua, 25 Nov 2020 2:44 pm
por jlstfnny45
Olá pessoal

Preciso subtrair a dt.liberacao do registro atual com a dt.liberacao do registro anterior, segue a query:

Selecionar tudo

select 
  a.dt_liberacao,
  (to_date(a.dt_liberacao,'DD/MM/RR HH24:MI'))dt_liberacao ,
  LAG (to_char(a.dt_liberacao,'DD/MM/RR HH24:MI'), 1, 0) OVER (ORDER BY a.nr_sequencia) dt_liberacao_anterior
from xxxx
A consulta está OK, mas o problema é que não consigo subtrair o dt_liberacao com o dt_liberacao_anterior porque o LAG não aceita, aparentemente, o to_date, que é onde eu conseguiria subtrair essas duas datas.
Alguém pode me ajudar? O que eu preciso é identificar os itens que está sendo liberado com menos de 24 horas do item anterior

Re: Subtrair datas

Enviado: Sex, 27 Nov 2020 1:50 am
por dr_gori
Qual erro está tando?
Acredito que o problema não é a subtração da data com o LAG.
E sim esse TO_CHAR ali dentro.

Você está tentando subtrair uma data de um varchar.
Se tirar o TO_CHAT, acredito que vai funcionar.