Fórum Retornar quantidade de dias SQL #255916

25/10/2004

0

Boa Tarde pessoal,


to com um probleminha para retornar numa rotina com SQL a quantidade de dias entre duas data. Alguem poderia me dar uma dica para algum tipo de função?

Antecipadamente, obrigado.

Sanzio F. C. Amora
InforPlay Informatica


Sanzio

Sanzio

Responder

Posts

25/10/2004

Julianaleme

[b:c454f7a663]entaum eu tenho uma função para isso ...
Foi feita para o oracle , mas qq coisa vc adapta ela para o seu banco , ta bom ?
Ai vai:
CREATE OR REPLACE FUNCTION FN_CALCDIFFDIAS(P_DATAINI CHAR,
P_DATAINIFOR CHAR,
P_DATAFIM CHAR,
P_DATAFIMFOR CHAR) RETURN STRING
IS

VT_DIFF NUMBER; -- DIFERENCA TOTAL
VT_DIFH NUMBER; -- FACAO DE HORAS E MINUTOS DA DIFERENCA
VT_DIFDIAS INTEGER;
VT_RETORNO CHAR(20);

BEGIN
VT_DIFF := TO_DATE(P_DATAFIM,P_DATAFIMFOR)-TO_DATE(P_DATAINI,P_DATAINIFOR);
VT_DIFDIAS := TRUNC(VT_DIFF);
VT_DIFH := VT_DIFF - VT_DIFDIAS;

IF VT_DIFDIAS = 1 THEN
VT_RETORNO := ´01 Dia´;
ELSE
VT_RETORNO := TO_CHAR(VT_DIFDIAS,´00´)||´ Dias´;
END IF;

IF VT_RETORNO = ´:´ THEN
VT_RETORNO := NULL;
END IF;

RETURN VT_RETORNO;

END;

/
SHOW ERRORS FUNCTION FN_CALCDIFFDIAS;
bem ai esta , ta bom ...
Qualquer coisa é só me mandar uma mensagem particular , ok ...
Bjos[/b:c454f7a663]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar