Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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
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
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.