Ultima posição de estoque..

Firebird

06/08/2005

iai galera tranquilo??

meu problema é o seguinte preciso filtrar a ultima posição do estoque referente a uma data inicial então bolei o seguinte select

SELECT ESTOQUE,
MAX(DATA),
cod_materia

FROM LOGESTMAT

WHERE (DATA < :DATAI )and
(codemp = 1) and
(cod_materia = :MAT)

GROUP BY COD_MATERIA,ESTOQUE

ORDER BY SEQ,data DESCENDING

agora o problema é o seguinte ele me da todas as linhas que são menores que a data Inicial eu queria somente a ultima data que seria minha real posição anterior do estoque.

como poderia melhorar esse select para filtrar altima data de movimentação ??


Juniorcesar

Juniorcesar

Curtidas 0

Respostas

Sremulador

Sremulador

06/08/2005

use o min


GOSTEI 0
Juniorcesar

Juniorcesar

06/08/2005

use o min


amigo continua filtrando todos os registros menores que a data Inicial
preciso apenas de ultimo registro da pesquisa...


GOSTEI 0
Afarias

Afarias

06/08/2005

bom talvês seja isso q vc quer:

SELECT * FROM LOGESTMAT
WHERE DATA = (
SELECT MAX(DATA) FROM LOGESTMAT WHERE
DATA < :DATAI AND CODEMP = 1 COD_MATERIA = :MAT)

ou MIN(DATA) ...


T+


GOSTEI 0
Juniorcesar

Juniorcesar

06/08/2005

bom talvês seja isso q vc quer: SELECT * FROM LOGESTMAT WHERE DATA = ( SELECT MAX(DATA) FROM LOGESTMAT WHERE DATA < :DATAI AND CODEMP = 1 COD_MATERIA = :MAT) ou MIN(DATA) ... T+


valeu.....amigo deu certo

SELECT cod_materia, estoque FROM LOGESTMAT

WHERE DATA = (
SELECT MAX(DATA)
FROM LOGESTMAT
WHERE DATA < :DATAI ) AND CODEMP = 1
AND COD_MATERIA = :MAT


GOSTEI 0
POSTAR