haidan 0 Denunciar post Postado Janeiro 9, 2014 Boa noite a todos. Tenho um banco de dados com perguntas, locais e categorias. Tenho uma tabela que faz a relação entre perguntas com locais e categorias, sendo estas em linhas individuais. Por exemplo, num registro relaciona pergunta com categoria em outra pergunta com local e assim por diante Estou com problemas para retornar uma pergunta de uma respectiva categoria e local Eis a minha query: select * from perguntas, relacoes where perguntas.statusPergunta = 1 and (relacoes.codCategoria = 5 or relacoes.codCategoria = 8) and perguntas.codPergunta IN (select relacoes.codPergunta from relacoes where relacoes.codLocal = 3) order by RAND() limit 1 O que está acontecendo: O retorno meio que está ignorando a comparação com as categorias informadas: (relacoes.codCategoria = 5 or relacoes.codCategoria = 8) Sendo assim, sempre está retornando qualquer registro que esteja com status = 1 Alguém pode me dar uma mão, por favor? Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
haidan 0 Denunciar post Postado Janeiro 10, 2014 Já resolvi. Bastou adicionar a seguinte comparação no fim da query: and perguntas.codPergunta = relacoes.codPergunta Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites