Firebird (update com subselect e where)
06/08/2021
0
Boa tarde, pessoal!
Estou tentando fazer um update de um campo na tabela vendas com dados de outra tabela chamada chave, porém preciso usar um condicional com os dados de um campo da tabela chave. Consegui com o código abaixo mas está alterando todos os registros da tabela vendas
update vendas v
set
v.data = (select
c.data
from chave c
where
(c.cupom = v.cupom))
A tabela chave tem um campo chamado status só quero alterar a data na tabela vendas quando o status em chave for diferente de 'autorizada'
Estou tentando fazer um update de um campo na tabela vendas com dados de outra tabela chamada chave, porém preciso usar um condicional com os dados de um campo da tabela chave. Consegui com o código abaixo mas está alterando todos os registros da tabela vendas
update vendas v
set
v.data = (select
c.data
from chave c
where
(c.cupom = v.cupom))
A tabela chave tem um campo chamado status só quero alterar a data na tabela vendas quando o status em chave for diferente de 'autorizada'
Daniel Santos
Curtir tópico
+ 0
Responder
Posts
07/08/2021
Emerson Nascimento
tente algo assim:
update vendas v set v.data = (select c.data from chave c where c.cupom = v.cupom and c.status = 'x') where exists(select c.data from chave c where c.cupom = v.cupom and c.status = 'x')
Responder
Clique aqui para fazer login e interagir na Comunidade :)