Ir para conteúdo

POWERED BY:

Arquivado

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

Jessica_Priscila

Consulta não retorna todos os registros

Recommended Posts

Olá, recentemente fiz um programa de controle fretes, Banco Access. No Data Module ao inves de usar um ADOtable, usei um ADOdataset p/ chamar as tabelas, até aí td bem, mas estou tendo um problema na hora de fazer a consulta. Algumas vezes não aparecem todos os registros da tabela, por ex: fiz uma consulta p/ período, e no período selecionado tem dois registros, mas na consulta aparece só um. O que será que pode estar errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está usando um comando SQL para pesquisar? Se sim, já testou ele direto no BD para ver se não é alguma cláusula que usa no seu WHERE que pode estar filtrando de modo a só retornar uma consulta? Como está fazendo a consulta, qual o código que está usando? Fica difícil ajudar no escuro.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá Chrnos...Obrigada p/ Responder, a minha consulta é mais ou menos assim:

 

SELECT

 

m.motorista,

p.placa,

v.cod_viagem,

v.data_chegada,

v.data_saida,

v.data_lançamento,

v.destino,

v.histórico,

v.km_chegada as KMchegada,

v.km_saida as KMsaida,

sum(v.Km_chegada - v.Km_saida) as KmRodados,

v.levou as Levou_Dinh,

v.trouxe as trouxe_Dinh,

sum(v.levou - v.trouxe) as Sobrou,

v.valor_destino as VLR_Destino,

v.valor_retorno as VLR_Retorno,

v.litros_diesel as Total_Litros,

e.empresa,

sum((v.Km_chegada - km_saida)/ v.litros_diesel) as media,

sum((v.valor_destino+v.valor_retorno)-(dv.quantidade*dv.valor_unitário))as LIQviagem

 

 

 

FROM motorista m, placa p, viagens v, detalhes_viagem dv, empresa e

 

WHERE (m.cod_motorista=v.cod_motorista) and (p.cod_placa=v.cod_placa)and (dv.cod_viagem=v.cod_viagem) and(e.cod_empresa=v.cod_empresa)and

v.data_lançamento between :datainicial and :datafinal

 

GROUP BY

m.motorista,

p.placa,

v.cod_viagem,

v.data_chegada,

v.data_saida,

v.data_lançamento,

v.destino,

v.histórico,

v.km_chegada,

v.km_saida,

v.levou,

v.trouxe,

v.valor_destino,

v.valor_retorno,

v.litros_diesel,

e.empresa

;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você já verificou se os registros em questão não são iguais e se algum dos filtros que usou no where não está em conflito com os dados gravados? Por usar o Group by, se tiver um lançamento duplicado e com todos os campos iguais, ele vai matar o duplicado pelo agrupamento. Se nos registros alguma das condições do where não for satisfeita, o registro não aparecerá também.... já pegou a query e tentou rodar direto no BD com os valores que passa via código para testar?

 

[]'s

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.