Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Adilson Jr

Select Complicado

Recommended Posts

Galera, tudo bem? Estou precisando de uma grande ajuda. Pra falar a verdade nem sei se é possivel fazer.

É o seguinte, estou desenvolvendo um sistema em ASP com Mysql a respeito de obras e no banco possuo 3 tabelas:

 

OBRAS

ID -

Endereco - Varchar

Cidade - Int (pois pega o valor de outra tabela)

Bairro - Int (pois pega o valor de outra tabela)

 

PROFISSIONAIS

ID -

Nome - Varchar

Categoria - Varchar

PROFOBRAS

IDPROF - Int(pois pega o valor da tabela PROFISSIONAIS)

IDOBRA - Int(pois pega o valor da tabela OBRAS pelo fato de uma obra poder ter vários Profissionais)

 

Minha duvida é o seguinte, preciso fazer uma busca por profissional que possua obras na cidade X. Só que esse profissional pode ter varias obras.

 

Como monto um select para esta busca??

 

Espero ter explicado bem...

 

Valew

Compartilhar este post


Link para o post
Compartilhar em outros sites

SELECT `PROFISSIONAIS`.`NOME`,`OBRAS`.`ENDEREÇO`,`OBRAS`.`ID`
FROM `OBRAS` INNER JOIN `PROFOBRAS` ON `PROFOBRAS`.`IDOBRA` = `OBRAS`.`ID`
INNER JOIN `PROFISSIONAIS` ON `PROFOBRAS`.`IDPROF` = `PROFISSIONAIS`.`ID`
WHERE `OBRAS`.`CIDADE` = 9

 

Vê se funciona pra você

O INNER JOIN vai forçar que os valores existam, se eles não existirem não dá nenhum resultado

Você também pode usar o GROUP_CONCAT() pra mostrar numa linha só, todas as obras do profissional, separados por vírgulas ou qualquer outro delimiter que quiser.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.