skapitao 0 Denunciar post Postado Outubro 16, 2012 Olá! Estou desenvolvendo uma busca avançada para um sistema de cadastro de usuário. Essa busca possui quatro campos: Palavra-chave, Área de atuação, Estado e Cidade. Se o usuário do sistema preencher esses 4 campos eu preciso refinar a busca em 9 tabelas diferentes. Minha dúvida é a seguinte: Eu consigo fazer essa consulta com apenas 1 Select? Como? As tabelas estão estruturadas da seguinte maneira: - usuario (id, nome); - area_profissional (id, user_id, descricao); - perfil(id, user_id, descricao); - formacao(id, user_id, descricao); - publicacao (id, user_id, descricao); - premio (id, user_id, descricao); - idioma(id, user_id, descricao); - field(id, value); //tabela que armazena campos, ex: id = '9' e value = 'Estado' - field_value(id, user_id, field_id, value);//tabela que armazena os valores dos campos personalizados, ex: field_id = '9' e value = 'São Paulo' *Apenas para informação: A linguagem do site é PHP, e os selects no bd são via procedures Desde já agradeço! Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Outubro 17, 2012 Boa noite amigo, Bom não entendi muito bem o modelo, todas as tabelas exceto field são relacionadas com a usuario, e a field é relacionada com field_value é isso? Qual o propósito dessa ligação? Pois notei as duas tabelas tem uma coluna value, qual a diferença de uma pra outra? Se você puder postar a imagem do MER fica melhor. Quanto a consulta em várias tabelas, você deve usar os JOINs, conhece? Leia a documentação do MySQL: http://dev.mysql.com/doc/refman/5.5/en/join.html Em caso de dúvidas sinta-se a vontade para perguntar. Espero que seja útil, abraço. Compartilhar este post Link para o post Compartilhar em outros sites
skapitao 0 Denunciar post Postado Outubro 17, 2012 Boa noite amigo, Bom não entendi muito bem o modelo, todas as tabelas exceto field são relacionadas com a usuario, e a field é relacionada com field_value é isso? Qual o propósito dessa ligação? Pois notei as duas tabelas tem uma coluna value, qual a diferença de uma pra outra? Se você puder postar a imagem do MER fica melhor. Quanto a consulta em várias tabelas, você deve usar os JOINs, conhece? Leia a documentação do MySQL: http://dev.mysql.com....5/en/join.html Em caso de dúvidas sinta-se a vontade para perguntar. Espero que seja útil, abraço. Olá Diego, obrigado pelo retorno. Vou ler a documentação e tentar entender a melhor maneira para fazer essa consulta. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Outubro 17, 2012 Tranquilo, qualquer coisa estamos aí. Abraço. Compartilhar este post Link para o post Compartilhar em outros sites