[firebase-br] Subtraindo N mes(es) de uma data
Eduardo Jedliczka (TeamFB)
jedyfb em gmail.com
Ter Nov 15 21:13:28 -03 2005
Não há uma forma prática e simples de se resolver este problema, mas sim!
existe solução...
A maioria de nós prefere utilizar uma UDF para isto, já que os recursos
nativos oferecidos pelo FB 1.X são extremamente flexíveis, mas nada
práticos.
bom, vamos à um exemplo...
Se eu desejo saber o primeiro dia do mês de um campo Data hipotético
(15/11/2005), posso fazer algo como:
Select cast((Data - Extract(day from data) +1 ) as date) from tabela
ou seja, vai retornar 01/11/2005
Se eu desejo o último dia do mês anterior, é só retirar o +1 do select.
31/10/2005
Bom, se você subtrair a quantidade de dias deste novo select, você tem:
30/09/2005
Se repetir isto mais uma vez, você tem 31/08/2005.
Se repetir isto pela 4ª vez, você tem 31/07/2005.
Aí é só somar a quantidade de dias da data origial e obter: 15/08/2005.
Só que você deve ter percebido que vai ficar MUUUUUUUUUITO longo...
Se desejar, pode fazer uma SP, assim simplifica bem a coisa. Mas é mais
simples e rápido utilizar uma UDF.
Sucesso,
=========================
Eduardo Jedliczka
Membro do TeamFB - FireBase
Apucarana - Pr
=========================
----- Original Message -----
From: "Valber Aguiar" <listas em aguiarsistemas.com.br>
To: <lista em firebase.com.br>
Sent: Tuesday, November 15, 2005 6:54 PM
Subject: [firebase-br] Subtraindo N mes(es) de uma data
Pessoal como faço para subtrair N mes(es) de uma data?
Exemplo: 15/11/2005 - 3 meses = 15/08/2005
Valber Aguiar
Imperatriz-MA
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista