Ir para conteúdo

POWERED BY:

Arquivado

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

joaogil

clásula estranha

Recommended Posts

Eu estou com uma query que precisa selecionar todos os produtos que ainda não possuem registros na tabela de imagens auxiliares (tb_img_auxiliar), então eu tentei de várias maneiras e tem 2 registros que não deveriam retornar, porque já possuem imagens auxiliares e mesmo assim retornam.

A condição seria assim:

tb_produto.id <> tb_img_auxiliar.id_produto

 

Eu tentei assim:

 

SELECT id, nomeFROM tb_produtoWHERE tb_produto.id <> ( 'select id_produto from tb_img_auxiliar' ) ORDER BY tb_produto.id ASC
E

 

SELECT tb_produto.id AS id, tb_produto.nome AS nome FROM tb_produto, tb_img_auxiliar WHERE tb_produto.id <> id_produto GROUP BY tb_produto.id ORDER BY tb_produto.id ASC")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim:

 

SELECT id, nomeFROM tb_produtoWHERE NOT EXISTS (select id_produto from tb_img_auxiliar where id_produto=tb_produto.id ) ORDER BY tb_produto.id ASC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pelo que eu vi esta tua query funciona, mas no meu caso não funcionou, acho que meu Mysql é de uma versão (MySQL 3.23.47) que não suporta a sintaxe EXISTS !

Deu este erro:

 

#1064 - You have an error in your SQL syntax near 'EXISTS ( 'select id_produto from tb_img_auxiliar where id_produto=tb_produto.id ' at line 1

 

Vou fazer um upgrade de versão ! Eu resolvi de outra forma mesmo !

Ogrigadão http://forum.imasters.com.br/public/style_emoticons/default/joia.gif !!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pelo que eu vi esta tua query funciona, mas no meu caso não funcionou, acho que meu Mysql é de uma versão (MySQL 3.23.47) que não suporta a sintaxe EXISTS !

Deu este erro:

 

#1064 - You have an error in your SQL syntax near 'EXISTS ( 'select id_produto from tb_img_auxiliar where id_produto=tb_produto.id ' at line 1

 

Vou fazer um upgrade de versão ! Eu resolvi de outra forma mesmo !

Ogrigadão http://forum.imasters.com.br/public/style_emoticons/default/joia.gif !!

Na verdade ele nao aceita subselects, tenta atualizar seu mysql, vai te poupar de mta dor de cabeça

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente.

 

Sua versão não aceita sub-selects. Atualize para a versão 4.1 ou superior que irá funcionar.

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.