Fórum Dúvida sobre Procedure com Datas! #51565

14/07/2005

0

Olá, tenho a seguinte tabela:[b:7cbbf7dbac] Caixa[/b:7cbbf7dbac], com os campos:
Descricao
Data
Valor

nela eu tenho varios registros, como por exemplo:

1  20/01/2005   520,00
2  20/01/2005     20,00
3  20/01/2005       1,00
4  20/01/2005   820,00
5  25/01/2005   120,00
6  25/01/2005   587,00
7  28/01/2005   271,00
8  20/02/2005   197,00
9  20/02/2005     25,00


Pois bem, queria uma procedure que me retornasse o valor do ultimo registro de um dia antes que eu passaria, exemplo:

-> Data: 25/01/2005

Me retornaria o Valor de 820,00

-> Data: 28/01/2005

Me retornaria o Valor de 587,00


Sempre o ultimo registro ate um dia antes do dia que eu forneci.

Como eu faço isso? qual o camando na procedure eu devo fazer?

Desde já agradeço


[]s
Fellipe H.


Titanius

Titanius

Responder

Posts

14/07/2005

Sremulador

você pode utilizar uma procedure em conjunto com o extract () pegando o dia e diminuindo por 1...


Responder

Gostei + 0

14/07/2005

Titanius

e como seria? Nunca usei esse extract


[]s


Responder

Gostei + 0

14/07/2005

Beppe

select first 1 Valor
from Tabela
where Data < :Data
order by Descricao desc



Responder

Gostei + 0

14/07/2005

Titanius

Amigo beppe

voce clareou as ideias, mas ainda nao funcionou, se eu colocar do jeito que vc inseriu ele me traz um registro, no meio por exemplo:



1 20/01/2005 520,00
2 20/01/2005 20,00
3 20/01/2005 1,00 [b:0bf56c2137]<-- [/b:0bf56c2137]
4 20/01/2005 820,00
5 25/01/2005 120,00
6 25/01/2005 587,00
7 28/01/2005 271,00
8 20/02/2005 197,00
9 20/02/2005 25,00

Aí modifiquei da seguinte forma:
select first 1 idcaixa, valor
from caixa
where Data < :Data
order by Descricao


Data = 28/01/2005

Aí ele me trouxe, porem um a menos que o anterior:
1 20/01/2005 520,00
2 20/01/2005 20,00
3 20/01/2005 1,00
4 20/01/2005 820,00
5 25/01/2005 120,00 [b:0bf56c2137]<-- [/b:0bf56c2137]
6 25/01/2005 587,00 [color=red:0bf56c2137] [b:0bf56c2137]<-- Este seria o certo [/b:0bf56c2137][/color:0bf56c2137]
7 28/01/2005 271,00
8 20/02/2005 197,00
9 20/02/2005 25,00


Alguma outra idéia ?

Desde já agradeço

[]s
Fellipe H.


Responder

Gostei + 0

14/07/2005

Beppe

Só se for o campo Descricao o problema, pelo nome ao menos é. Vejamos com idcaixa(que vc tinha omitido):

select first 1 idcaixa, Valor
from Caixa
where Data < :Data
order by idcaixa desc



Responder

Gostei + 0

14/07/2005

Titanius

Valeu beppe :mrgreen: :mrgreen: :mrgreen:

funcionou perfeitamente!


[]s


Responder

Gostei + 0

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

Aceitar