Ir para conteúdo
  • Cadastre-se

Update com subselect no firebird


Ver Solução Respondido por Pedro A. Araújo,
  • Este tópico foi criado há 1280 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membro Pro Verificado
Postado

Boa tarde!

Não tenho muita experiencia no Firebird.

Precisava atualizar a origem dos meus produtos de acordo com a ultima nota de entrada, mas não sei como fazer no firebird, pois uso o Firebird 2,5(não tem merge e nem aceita with para update como no SqlServer)

Tabelas e campos envolvidos:

Produtos.Codigo  e Produtos.Origem.

NfEntrada.DataEntrada, NfEntrada.Serie, NfEntrada.DataEmissao, NfEntrada.Numero

ITNfEntrada.Serie, ITNfEntrada.DataEmissao, ITNfEntrada.Numero, ITNfEntrada.CodProduto, ITNfEntrada.Origem,

 

  • Membro Pro Verificado
Postado

Obrigado pela resposta, Pedro.

Porém, como pegará a ultima entrada, no caso tem que ser com max(NfEntrada.DataEntrada) que está somente na tabela Nfentrada

  • Solution
Postado (editado)

Dentro do subselect, você pode fazer join com a tabela NfEntrada e odenar de forma decrescente pela data de entrada.

 

UPDATE PRODUTOS
SET ORIGEM = (
  SELECT FIRST 1 ITNFENTRADA.ORIGEM
  FROM ITNFENTRADA
  INNER JOIN NFENTRADA ON (NFENTRADA.ID = ITNFENTRADA.IDNFENTRADA)
  WHERE ITNFENTRADA.CODPRODUTO= PRODUTOS.CODIGO
  ORDER BY DATAENTRADA DESC)

 

Editado por Pedro A. Araújo
  • Consultores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 1280 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...