EXIBIR REGISTRO BASEADO NA AUSêNCIA DE OUTRO

 Tópico anterior Próximo tópico Novo tópico

EXIBIR REGISTRO BASEADO NA AUSêNCIA DE OUTRO

SQL / DATABASE

 Compartilhe  Compartilhe  Compartilhe
#495699 - 17/11/2020 20:00:46

VIVIANEARRAIS
BALSAS
Cadast. em:Setembro/2020


Boa noite Pessoal,

Tenho 2 tabelas: Produtos_Precos e Produtos

Hoje entrei na tabela 'Produtos' e apaguei 1000 registros (produtos que não precisa mais no estoque)
Porem na tabela 'Produtos_Precos' possui os preços de todos os produtos... desde cadastro até a ultima alteração
Para que outro produto não utilize esses registros que ficaram 'orfão', gostaria de apagar-los.

Entao preciso filtrar eles... ou seja, pegar todos os registros na 'Produtos_Precos' que possui o campo 'COD_PRODUTO' que não existe mais esse codigo na tabela 'Produtos' (produtos.CODIGO).

Somente os registros que não tem nenhum produto vinculado a ele.

SELECT Produtos_Precos.CODIGO, Produtos_Precos.COD_PRODUTO, Produtos_Precos.DATA
FROM Produtos_Precos INNER JOIN produtos ON Produtos_Precos.COD_PRODUTO = produtos.CODIGO




#495700 - 17/11/2020 20:09:09

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Algo como:

SELECT Produtos_Precos.CODIGO, Produtos_Precos.COD_PRODUTO, Produtos_Precos.DATA
FROM Produtos_Precos INNER JOIN produtos ON Produtos_Precos.COD_PRODUTO = produtos.CODIGO
WHERE Produtos_Precos.CODIGO NOT IN (SELECT Codigo From PRODUTOS)



O ideal, seria ter uma relação de chave estrangeira entre essas tabelas para poder fazer uma deleção CASCADE. Assim, deleta o produto e automaticamente deleta também os preços.

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495702 - 17/11/2020 21:02:31

VIVIANEARRAIS
BALSAS
Cadast. em:Setembro/2020


Citação:
:
Algo como:

SELECT Produtos_Precos.CODIGO, Produtos_Precos.COD_PRODUTO, Produtos_Precos.DATA
FROM Produtos_Precos INNER JOIN produtos ON Produtos_Precos.COD_PRODUTO = produtos.CODIGO
WHERE Produtos_Precos.CODIGO NOT IN (SELECT Codigo From PRODUTOS)



O ideal, seria ter uma relação de chave estrangeira entre essas tabelas para poder fazer uma deleção CASCADE. Assim, deleta o produto e automaticamente deleta também os preços.


Apareceu os registros dos produtos que ainda existem na tabelas produtos.... queria ver somente os registros dos produtos que apaguei



#495703 - 17/11/2020 21:28:46

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Citação:
:
Algo como:

SELECT Produtos_Precos.CODIGO, Produtos_Precos.COD_PRODUTO, Produtos_Precos.DATA
FROM Produtos_Precos INNER JOIN produtos ON Produtos_Precos.COD_PRODUTO = produtos.CODIGO
WHERE Produtos_Precos.CODIGO NOT IN (SELECT Codigo From PRODUTOS)



O ideal, seria ter uma relação de chave estrangeira entre essas tabelas para poder fazer uma deleção CASCADE. Assim, deleta o produto e automaticamente deleta também os preços.

exatamente



#495704 - 17/11/2020 23:02:11

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Tente sem o join

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495705 - 18/11/2020 00:53:52

VIVIANEARRAIS
BALSAS
Cadast. em:Setembro/2020


Citação:
:
Tente sem o join

tirei o 'INNER JOIN' e deu erro
tirei o 'JOIN' deu erro



#495706 - 18/11/2020 01:11:39

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Todo ele...

SELECT Produtos_Precos.CODIGO, Produtos_Precos.COD_PRODUTO, Produtos_Precos.DATA
FROM Produtos_Precos
WHERE Produtos_Precos.CODIGO NOT IN (SELECT Codigo From PRODUTOS)


_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário