Jump to content

dev botao

Duvida de um SQL em Firebird com SubSelect


johnbh3
  • Este tópico foi criado há 725 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...
  • Membros Pro
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á 725 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.

The popup will be closed in 10 seconds...