Jump to content

dev botao

Duvida de um SQL em Firebird com SubSelect


johnbh3
  • Este tópico foi criado há 498 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Pessoal 

Seguinte 

 

Eu queria alterar uma tabela que seria assim

update nfe set nf.finalidade= 1


e tenho uma outra tabela 
select v.status from venda v
where v.status = 'R'

E possivel fazer isto com where simples e também inner join?

Edited by johnbh3
errro
Link to comment
Share on other sites

  • 2 months later...
Em 02/08/2022 at 21:01, Renato Rubinho disse:

Não ficou claro o que você quer fazer.

Quer dar o update e usar o segundo select como condição, conforme abaixo?

UPDATE NFE SET 

  FINALIDADE = 1

  WHERE NUMERO IN ( 

SELECT 

  NUMERONFE

  FROM VENDA

  WHERE STATUS = 'R' )

 

Se o subselect for muito grande vai ficar lento e travar, mas fazer o update um a um pode ser melhor:

EXECUTE BLOCK
AS
  DECLARE VARIABLE NUMERONFE INTEGER;
BEGIN
  FOR SELECT
        NUMERONFE
      FROM VENDA
      WHERE STATUS = 'R'
      INTO NUMERONFE
  DO
  BEGIN
    UPDATE NFE SET
      FINALIDADE = 1
    WHERE NUMERO = :NUMERONFE;
  END
END

Valter Patrick

Gerente de Projetos na empresa CTEC

(33)98400-0936

GitHub: https://github.com/valterpatrick

Link to comment
Share on other sites

  • Este tópico foi criado há 498 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.