Beto A. 0 Denunciar post Postado Agosto 12, 2011 Boa noite amigos Estou usando uma query com INNER JOIN, mas estou encontrando dificuldades para criar alguns filtros, na hora de me retornar os dados minha query está triplicando cada linha de registro na tabela. Segue a query: SELECT entradas. * , Lojas.loja AS nomeLoja FROM entradas INNER JOIN Lojas WHERE entradas.Data BETWEEN '2011/01/07' AND '2011/08/11' ORDER BY DATA ASC E ele me responde triplicando os resultados... Por exemplo, na tabela Lojas eu tenho cadastradas 3 lojas, e várias entradas referente a cada loja dessa. E de qualquer forma que pesquise ele coloca a mesma entrada para todas as lojas Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Agosto 12, 2011 Está faltando o "ON" aí no seu INNER JOIN, que é o ponto de ligação entre o ID da primeira tabela e a chave estrangeira correspondente na segunda tabela. Compartilhar este post Link para o post Compartilhar em outros sites
Beto A. 0 Denunciar post Postado Agosto 12, 2011 Boa noite, Leozitho Corrigi esse problema com o ON, foi erro grotesco meu. Mas ainda continuo com problema pra construir essa query ela está assim agora: SELECT `entradas`. * , `lojas`.`Loja` FROM `entradas` INNER JOIN `lojas` ON `lojas`.`Loja` = `entradas`.`Loja` WHERE `entradas`.`Loja` =3 AND `entradas`.`Data` BETWEEN '2011/07/01' AND '2011/08/11' LIMIT 0 , 30 agora ele me retorna conjunto vazio, como se não tivesse encontrado nada no periodo de data Opa, resolvido era um campo errado na cláusula ON Leozitho: Obrigado mais uma vez pela ajuda. Qualquer dia te pago uma breja em agradecimento! Abraços Compartilhar este post Link para o post Compartilhar em outros sites