allan.web 0 Denunciar post Postado Junho 20, 2008 Ola, estou com um probleminha em uma consulta no MySql para um e-commerce, preciso somar alguns valores de outras duas tabelas para chegar no valor que o produto será vendido, porem quando uso o SUM(campo) ele me retorna o primeiro resultado 3 vezes maior, o segundo 2 vezes maior e do terceiro em diante com os valores corretos, vou colocar a consulta aqui para ver se alguem pode me ajudar. CODE SELECT loja_categoria.des_categoria,loja_produto_categoria.cod_categoria,loja_produto.c od_produto,nom_produto,des_geral, SUM(loja_produto_outros.num_porcento) AS num_custo_outros ,ind_frete,des_local_isento,num_estoque,loja_forma_pagamento.des_pagamento,loja_ produto_pagamento.num_vezes,loja_produto_pagamento.num_juros,loja_produto_pagamen to.ind_destaque FROM loja_produto LEFT JOIN loja_produto_outros ON loja_produto.cod_produto = loja_produto_outros.cod_produto LEFT JOIN loja_produto_categoria ON loja_produto.cod_produto = loja_produto_categoria.cod_produto LEFT JOIN loja_produto_pagamento ON loja_produto.cod_produto = loja_produto_pagamento.cod_produto LEFT JOIN loja_forma_pagamento ON loja_produto_pagamento.cod_forma_pagamento = loja_forma_pagamento.cod_forma_pagamento LEFT JOIN loja_categoria ON loja_produto_categoria.cod_categoria = loja_categoria.cod_categoria GROUP BY loja_produto.cod_produto ORDER BY RAND() LIMIT 0,18 Des de ja agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
NaPraia 12 Denunciar post Postado Junho 20, 2008 SELECT loja_categoria.des_categoria,loja_produto_categoria.cod_categoria,loja_produto.c od_produto,nom_produto,des_geral,SUM(loja_produto_outros.num_porcento) AS num_custo_outros,ind_frete,des_local_isento,num_estoque,loja_forma_pagamento.des _pagamento,loja_produto_pagamento.num_vezes,loja_produto_pagamento.num_juros,loja _produto_pagamento.ind_destaque FROM loja_produto LEFT JOIN loja_produto_outros ON loja_produto.cod_produto = loja_produto_outros.cod_produto LEFT JOIN loja_produto_categoria ON loja_produto.cod_produto = loja_produto_categoria.cod_produto LEFT JOIN loja_produto_pagamento ON loja_produto.cod_produto = loja_produto_pagamento.cod_produto LEFT JOIN loja_forma_pagamento ON loja_produto_pagamento.cod_forma_pagamento = loja_forma_pagamento.cod_forma_pagamento LEFT JOIN loja_categoria ON loja_produto_categoria.cod_categoria = loja_categoria.cod_categoria GROUP BY loja_categoria.des_categoria,loja_produto_categoria.cod_categoria,loja_produto.c od_produto,nom_produto,des_geral,ind_frete,des_local_isento,num_estoque,loja_form a_pagamento.des_pagamento,loja_produto_pagamento.num_vezes,loja_produto_pagamento .num_juros,loja_produto_pagamento.ind_destaque tente assim, coloque todos os campos que você quer buscar no group by, exceto as funções de soma. Compartilhar este post Link para o post Compartilhar em outros sites
allan.web 0 Denunciar post Postado Junho 20, 2008 Ola, funcionou parcialmente, agora surgio outro problema, está repetindo os produtos, tentei usar o distinct para ver se não repetiria mas, mas não deu certo, como faço para ele não repetir mais os resultados, sendo que a tabela principal é a loja_produto. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
allan.web 0 Denunciar post Postado Junho 20, 2008 Ainda não consegui resolver, alguem tem alguma ideia de como posso fazer para que ele não repita os dados retornados? Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Junho 21, 2008 Use sub-queries Compartilhar este post Link para o post Compartilhar em outros sites