UPDATE EM UMA TABELA COM DADOS DE OUTRA NO FIREBIRD

05/06/2020

0

Bom dia a todos! tenho uma tabela PRODUTOS que contem um campo GRUPO e outra tabela MOVITENS que tenho também um campo chamado GRUPO. Preciso preencher o campo GRUPO da tabela MOVITENS com o conteudo do campo GRUPO da tabela PRODUTOS. Estou fazendo assim mas está retornando o erro abaixo:

UPDATE MOVITENS SET GRUPO = (SELECT GRUPO FROM PRODUTOS WHERE (PRODUTOS.CODIGO = MOVITENS.CODPRO));

O erro que é retorna é " multiple rows in singleton select. "
Gilson Silva

Gilson Silva

Responder

Posts

05/06/2020

Emerson Nascimento

isto deveria funcionar.
UPDATE MOVITENS SET GRUPO = (SELECT PRODUTOS.GRUPO FROM PRODUTOS WHERE PRODUTOS.CODIGO = MOVITENS.CODPRO);

se não funcionar, verifique se não há produtos duplicados na tua tabela PRODUTOS:
SELECT CODIGO, COUNT(*) QTD
FROM PRODUTOS
GROUP BY CODIGO
HAVING COUNT(*) > 1

Responder

05/06/2020

Gilson Silva

Obrigado Emerson. Vc está certo. O problema está na tabela produtos que tem alguns produtos com código duplicado. Achei estranho porque já tinha rodado esse script em outro cliente e tinha dado certo. Valeu mesmo.
Responder

03/11/2022

Newsat

Boa tarde, e quando á registros duplicados na tabela PRODUTOS? Existe como pegar o registro mais recente ou qualquer um?
Responder

03/11/2022

Newsat

Boa tarde, e quando há registros duplicados na tabela PRODUTOS? Existe como pegar o registro mais recente ou qualquer um?
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar