Ir para conteúdo

POWERED BY:

Arquivado

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

manolegal

[Resolvido] Consultar em 02 campos

Recommended Posts

Olá Amigos. Quero comparar uma variavel com 02 colunas diferentes da mesma tabela. Implementei o seguinte código, mas não está retornando corretamente.

if(!empty($empresa)){
$query .= " AND empresas.empresa LIKE '%$empresa_formatado%' OR empresas.nome_generico LIKE '%$empresa_formatado%'";
   }

   $Sql = "SELECT id_empresa, empresa, endereco, nome_generico, pessoa_tipo, cnpj
cidade, estado
FROM empresas, cidades, estados
WHERE cidades.id_cidade = empresas.cidade_id
AND estados.id_estado = cidades.estado_id
AND empresas.ativa = 'Sim'
".$query. "
ORDER BY nome_generico ASC";

Está retornando dados repetidos. Onde está o problema?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque você tem que usar INNER JOIN.

SELECT id_empresa, empresa, endereco, nome_generico, pessoa_tipo, cnpj
cidade, estado
FROM empresas INNER JOIN cidades AND estados
ON cidades.id_cidade = empresas.cidade_id
AND estados.id_estado = cidades.estado_id
WHERE empresas.ativa = 'Sim'
".$query. "
ORDER BY nome_generico ASC

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.