Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

valtinho2005

Trazer a última data perto do filtro

Recommended Posts

Boa tarde!

 

Estou precisando fazer um filtro. Seguinte:

 

tenho BD uma tabela OBJETO_MANUTENCAO

e outra tabela INDICADOR_OBJETO

 

na primeira guardo informações do objeto de manutenção (carro, moto, caminhao, maquinas, computador etc)

na segunda eu guardo a quilometragem ou horas de uso de cada objeto.

 

estou tentando fazer um relatório que me traga o consumo de combustivel por mês, ou seja, quilometragem por mês (ou período digitado) dividido pela meu último indicador perto desta data do filtro.

 

exmeplo:

 

Objeto: carro, hsh-0808

gastou 500 litros de combustivel de 01/09 a 10/09

na minha tabela, se eu buscar o indicador de uso dele na data 10/09, ninguem andou com esse carro, por isso não traz nada, dai eu queria que ele trouxesse o do dia 09, se nao tivesse, trazia o do dia 08 e consequentemente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Creio que o parâmetro deva ser Data De / Data Ate e o query tudo gasto no periódo, não achando é zero.

 

mas publique a descrição das tabelas todavia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenho BD uma tabela OBJETO_MANUTENCAO

e outra tabela INDICADOR_OBJETO

 

na primeira guardo informações do objeto de manutenção (carro, moto, caminhao, maquinas, computador etc)

na segunda eu guardo a quilometragem ou horas de uso de cada objeto.

 

estou tentando fazer um relatório que me traga o consumo de combustivel por mês, ou seja, quilometragem por mês (ou período digitado) dividido pela meu último indicador perto desta data do filtro.

 

Eis esboço do código que retorna o indicador mais recente, no período informado.

SELECT ...,
     (SELECT top (1) IsNull(I.indicador, 0)
        from INDICADOR_OBJETO as I
        where I.data >= '2013-09-01' and I.data < '2013-09-11'
              and I.? = O.?
        order by I.data desc) as indicador
  from OBJETO_MANUTENCAO as O;

Utilização de top (1) em conjunto com order by ... desc na subconsulta.

Avalie o código com cuidado; pode conter algum erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.