Ir para conteúdo

POWERED BY:

Arquivado

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

juliano.ma

[Resolvido] Unir duas tabelas

Recommended Posts

Boa tarde amigos,

 

Tenho duas tabelas:

 

produto //nome da tabela
prod_id
prod_nome
prod_cat
prod_preco

descricao //nome da tabela
desc_id
desc_desc

To fazendo um formulário de busca onde se possa consultar por qualquer uma das colunas.

 

Digamos que o cliente procure pela descrição 'medicamento', então quero exibir o resultado assim:

 

id = 200

nome = xarope

categoria = etc

descrição = medicamento usado para etc etc etc

preço = 5,00

 

Vejam o que eu já tentei:

 

$sql = "SELECT * FROM produto p INNER JOIN descricao d ON d.desc_id = p.prod_id AND desc_desc LIKE '%medicamento%'";
$resultado = mysql_query($sql);

O problema é que o resultado diz que a coluna 'desc_desc' é desconhecida

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando você adiciona um alias para o nome da tabela você DEVE utilizá-lo em todas as referências àquela tabela. Então, você tem que dizer d.desc_desc ou p.desc_desc, de acordo com o local onde está este campo.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certeza absoluta, mas o interessante é que se eu pegar essa query e colar ela no phpmyadmin, mostra o resultado exatamente como eu quero. Já no script retorna esse erro sql.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já verificou se a aplicação se conecta no ambiente certo , banco,usuário(owner), servidor de bd etc ?

 

Desculpe-me se as perguntas parecem meio cretinas, mas em geral estes erros malucos são coisas assim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, conecta tudo perfeitamente, pois eu tenho outras consultas funcionando com a mesma função de conexão.

 

Acredito que o problema pode ser JOIN mesmo...

 

já tentei colocar a coluna desc_desc assim:

$sql = "SELECT *,desc_desc FROM produto p INNER JOIN descricao d ON d.desc_id = p.prod_id AND desc_desc LIKE '%medicamento%'";
$resultado = mysql_query($sql);

 

mesmo assim, funciona no phpmyadmin e no script não. http://forum.imasters.com.br/public/style_emoticons/default/natal_sad.gif

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.