[firebase-br] Ajuda - Conversão de Data - ULTIMO DIA DO MES.
Tecnobyte Informática
temp2 em tecnobyte.com.br
Sex Jul 15 12:36:31 -03 2011
Para você pegar o último dia de um mês qualquer, basta pegar o dia primeiro
do próximo mês e subtrair 1 dia.
SELECT
CAST('01.05.2011' AS DATE) - 1
FROM RDB$DATABASE
Vai retornar 30/04/2011
Usando este raciocínio acredito que você conseguirá encontrar uma solução
rapidamente.
Atenciosamente.
Daniel P. Guimarães
Tecnobyte Informática
www.tecnobyte.com.br
-----Mensagem Original-----
From: Diego Maccari
Sent: Friday, July 15, 2011 9:52 AM
To: FireBase
Subject: [firebase-br] Ajuda - Conversão de Data - ULTIMO DIA DO MES.
Bom dia pessoal to com um probleminha e não consegui encontrar uma solução.
Preciso encontrar o ultimo dia de um determinado mes.
Faço o seguinte procedimento
RESULT = :PDATA - EXTRACT(DAY FROM :PDATA) + 32 - EXTRACT(DAY FROM :PDATA -
EXTRACT(DAY FROM :PDATA) + 32);
Sendo RESULT um campo DATE e :PDATE um parametro ou variavel DATE o
resultado sai correto Ex:
para valor de :PDATA = 01/04/2009 o resultado de RESULT é 30/04/2009 ou seja
resultou exatamente no valor esperado.
Mas se eu precisar compor uma determinada data Ex:
:PDATA = CAST(‘01/’ || ‘04/’ || ‘2009’ AS DATE);
O RESULT seria o ultimo dia do mes anterior OU SEJA 31/03/2009 o que não
seria o resultado esperado
Onde está o problema porque quando uso o CAST AS DATE não retorna o ultimo
dia do Mes ??
Alguém poderia me ajudar...
Att
Diego Maccari.
Mais detalhes sobre a lista de discussão lista