Ir para conteúdo

POWERED BY:

Arquivado

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

William Espindola

Como efetuar um select com mais de uma condição em mais de uma tabela

Recommended Posts

Ola Galera!!

 

Estou precisando da seguinte ajuda, quero fazer um select em 2 tabelas mas com mais de uma condição.

 

Exemplo:

 

Tenho um form que terá varios campos chamado, nome, empresa...

No momento do select o usuário podera colocar o nome e a empresa para efetuar a busca, assim a pesquisa trará os nome que foram da mesma empresa.

 

Sendo que, cada valor deste estam em tabelas diferentes.

 

Como faço para buscar estes valore em tabelas diferentes?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se entendi bem, mas creio que seria +ou- isto

 

select 'clientes' tabela,cod,nome
from clientes
where nome like '%espindola%'
union all
select 'fornecedores' tabela,cod,nome
from fornecedores
where nome like '%espindola%'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, foi meio complicado o modo como eu pergutei, mas esta ai a solução para minha questão:

 

SELECT c.id_chamado, c.cham_id_empresa, c.empresa, c.cham_num_equipamento, c.cham_id_equipamento, c.data_agenda, c.status, c.dataencerrameno, e.nome_ponto 
FROM chamados c JOIN equipamentos e ON e.id_equipamento = c.cham_id_equipamento 
WHERE  c.id_chamado = '$num_chamado' or e.nome_ponto LIKE '%".$ponto."%' and c.cham_id_empresa = '$emp' ") or print (mysql_error());

 

 

Vou tentar esplicar:

 

Faço um SELECT dos campos que eu desejo;

No FROM primeiramente determino a tabela principal, e com o JOIN determino a segunda tabela, mas para isto, é preciso informar um campo que estaja nas duas tabelas ao mesmo tempo "Uma relação";

Com o WHERE faço a condição para a pesquisa onde se procura pelo numero do chamado ou o ponto que contenha o texto digitado pelo o usuário só que para a pesquisa pelo ponto é obrigatório colocar a informar a empresa pois sem isto o resultado sairia multiplicado, "Logicamente neste caso que tenho mais de um equipamento em vrias empresas".

 

Ta ai galera, sei que meu modo de explicação, é um pouco complicado, mas tentei, caso alguem ainda tenha alguma duvida é só postar ai.

 

Abraços!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando usar AND e OR na condição WHERE é bom separar por parenteses para ter certeza da ordem de execução das condições.

 

Em dúvidas sobre SQL é sempre bom publicar o SQL "limpo" , isto é sem o tratamento da linguagem.

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.