Ir para conteúdo
Fórum Script Brasil
  • 0

Select para duas tabelas MySql


Leonardo Jacques da Silva

Pergunta

Bom dia pessoal!

Minha situação é a seguinte, eu preciso verificar se determinado produto existe em outra tabela, por exemplo:

Tabela 1 = Posição de Estoque

Tabela 2 = Contagem de Estoque

Na primeira tenho todos os produtos e na segunda tenho os que foram contados, eu preciso fazer uma consulta onde eu mostre quais os produtos não foram contados, ou seja, mostrar quais são os produtos que estão faltando na Tabela2 e comparação à Tabela1??

Tentei da seguinte forma:

SELECT CodProduto, Coluna2, Coluna3 FROM Tabela1

WHERE CodProduto NOT IN (SELECT DISTINCT CodProduto FROM Tabela2)

Porém deu erro no MySql...

[]s

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Oi, 'Leonardo Jacques da Silva'

Qual foi a mensagem de erro?

Meu select é o seguinte:

SELECT c.codigo_cliente FROM cliente c WHERE c.codigo_produto NOT IN (SELECT DISTINCT f.funcod FROM func f)

O erro é este:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT DISTINCT f.funcod FROM func f)' at line 1

Imagino que seja por causa da versão, se for realmente isso qual seria a forma de obter mesmo resultado?

P.S. Minha versão é 4.0.2 do MySql

[]s

Link para o comentário
Compartilhar em outros sites

  • 0

Oi, 'Leonardo Jacques da Silva'

Realmente o problema está na versão. Subqueries são suportadas a partir da versão 4.1 do MySQL.

Uma solução possível, se não houver valores nulos em c.codigo_produto, é usar o left join.

SELECT c.codigo_cliente 
FROM cliente c 
LEFT JOIN func f ON f.funcod = c.codigo_produto
WHERE c.codigo_produto IS NOT NULL AND f.funcod IS NULL

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...