Boa tarde,
Sou novo no forum e preciso de ajuda.
Para listar o número de dias de atraso de uma factura, preciso comparar duas datas: data 1 e data2.
Se data 1 for superior à data 2 em mais de > 15 dias, deve assumir a (data1-1DIA)
Se a data 1 for inferior ou igual à data 2, deve assumir a data2 + 15 dias
Estava a tentar a função de DECODE abaixo, mas obviamente está a da erro. alguma sugestão?
DECODE(TRUNC(R1.DATA1)-TRUNC(R1.DATA2), >15, DATA1-1, <=15, DATA1+15)
Pela ajuda
Compara duas datas... pedido de ajuda
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
É que o decode não dá pra usar < >. Pra usar isso, tem que usar GREATEST.
Uma outra forma menos complicada é usar CASE WHEN no select. Neste caso, é possível usar < > AND OR, etc.
Veja:
http://glufke.net/oracle/viewtopic.php?t=1990
Uma outra forma menos complicada é usar CASE WHEN no select. Neste caso, é possível usar < > AND OR, etc.
Veja:
http://glufke.net/oracle/viewtopic.php?t=1990
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante