Jump to content
Felipe Lopes

Consulta Mysql

Recommended Posts

Galera, boa tarde.
Tenho um sistema rodando a 4 anos e nunca ocorreu esse problema, instalei o sistema juntamente com o banco de dados em um novo cliente, e toda vez que realizo uma consulta, esta me retornando com erro, detalhe, copiei o banco de dados para a minha maquina e esse erro nao acontece.

 

segue a consulta:

select
a.cidchaves, a.numeronota, A.DATAEMISSAO, A.DATASAIDA, A.TOTALNOTA, B.NOME AS CLIENTE, C.NOME AS TRANSPORTADORA, A.JUSTIFICATIVACANCELAMENTO,
sum(d.valor) AS VALOR,sum(d.desconto) AS DESCONTO, sum(d.valorpago) AS VALORPAGO,
sum((d.valor-d.desconto)-d.valorpago) as saldo, e.placa, f.descricao as condicaopagamento
from
tblcadastros b, tblcadastros c,
tblnotafiscal a left join tblfinanceiro d on (a.cidchaves=d.cidchavesnotafiscal)
left join tblcaminhoes e on (A.CIDCHAVESCAMINHAO=E.CIDCHAVES), tblcondicaopagamento F, tblcondicaonotafiscal g
WHERE
A.CIDCHAVESCLIENTE=B.CIDCHAVES AND
A.DATAEMISSAO>='2016-02-29' AND A.DATAEMISSAO<='2016-02-29' AND
A.TIPO=1 AND
A.CIDCHAVESTRANSPORTADORA=C.CIDCHAVES AND
A.JUSTIFICATIVACANCELAMENTO IS NULL AND
A.cidchaves=g.cidchavesnotafiscal and
g.cidchavescondicao=f.cidchaves
GROUP BY A.CIDCHAVES
having (sum(d.valor)-sum(d.desconto))>sum(d.valorpago)
ORDER BY a.numeronota
pela consulta e com os dado, a consulta voltaria sem dados com a condição having.
Porem nesse cliente com problema, ele me retorna os dados(campo saldo=0) onde com esse valor, nao era para me retornar pois atende a mesma condição.
cidchaves numeronota TOTALNOTA VALOR DESCONTO VALORPAGO saldo 7001 70 285 285 0 285 0 7101 71 82,5 82,5 0 82,5 0 7201 72 190 190 0 190 0 7301 73 590,85 590,85 9,85 581 0 7401 74 542,1 542,1 55,85 486,25 0 7501 75 352,95 352,95 1,95 351 0 7601 76 464,1 464,1 41,9 422,2 0 7701 77 19 19 0 19 0 7801 78 366,6 366,6 2 364,6 0 7901 79 206,7 206,7 24,85 181,85 0 8101 81 907,8 907,8 64,9 842,9 0 8201 82 614,25 614,25 0 614,25 0 8301 83 774,4 774,4 58,8 715,6 0
Alguem já passou por isso?

Share this post


Link to post
Share on other sites

Embora essa consulta possa funcionar ela esta errada

 

Em uma query ou o item agrega ou sofre função de agreção. Isso nao é valido no seu select pq vc mistura campo normal com SUM, e nao poe os que nao tao sofrendo função de agregação no GROUP BY

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.