SQL com várias tabelas
Bom dia a todos,
Fiz uma busca no fórum, mas como minha necessidade é bem específica, não encontrei nada.
Estou acostumado a fazer INNER JOIN, mas neste caso, não sei como fazer.
Assumi a manutenção de um site desenvolvido por outra pessoa e preciso de uma consulta um tanto complexa.
É um site de comércio eletrônico e preciso de uma consulta que busque produtos sem estoque.
Existem produtos com e sem especificações diferentes, como cor, voltagem, tamanho, etc.
Todos os produtos são cadastrados em uma tabela chamada "produtos". Quando não têm especificações, o estoque é cadastrado na tabela "estoque".
Quando tem especificação, o estoque fica na tabela "produtos_especificacoes".
O que eu preciso é de uma SQL que consiga analisar quais produtos estão sem estoque na tabela "estoque" e quais estão sem estoque na tabela "produtos_especificacoes" trazendo junto os dados da tabela "produtos" usando uma única paginação.
Já tentei de várias formas, mas ele não consegue pegar nas duas tabelas.
Minha última tentativa foi:
"SELECT produtos.idprod AS codprod, produtos.nome AS nomeprod, produtos.alerta_est AS alertaprod, estoque.idestoque AS idestoque, estoque.idproduto AS idestprod, estoque.estoque AS estestoque, estoque.est_minimo AS estestmin, produtos_especificacoes.id AS idespec, produtos_especificacoes.id_produto AS idprodespec, produtos_especificacoes.estoque AS estprodespec, produtos_especificacoes.est_minimo AS estminespec FROM estoque INNER JOIN produtos_especificacoes ON produtos_especificacoes.id_produto = produtos.idprod INNER JOIN produtos ON estoque.idproduto = produtos.idprod WHERE produtos_especificacoes.estoque <= produtos_especificacoes.est_minimo OR estoque.estoque <= estoque.est_minimo ORDER BY produtos.idprod"
Como posso fazer isto?
Seria INNER JOIN mesmo ou alguma coisa usando UNION?
Agradeço qualquer ajuda.
[]'s
Discussão (1)
Carregando comentários...