Atualizar registro caso atenda a condição

20/08/2014

0

Boa tarde pessoal ve se conseguem me ajudar

tenho três tabelas conv_detail que possui o campo no qual quero realizar o update campo saldo_devedor e conv_id como chave primária desta tabela

tenho também as tabelas conveniados(id = conv_id) e empresas na tabela conveniados tenho o campo empres_id como chave estrangeira da tabela empresas

O lance é o seguinte quero fazer um update na tabela conv_detail alterando o campo saldo_devedor de null para 0 caso o conveniado pertença a uma determinada empresa. Eu tava indo mais ou menos por essa linha de raciocínio porém não consegui

update CONV_DETAIL set SALDO_DEVEDOR = 0
from CONV_DETAIL cd inner join CONVENIADOS c
on cd.CONV_ID = c.CONV_ID
where
c.CONV_ID = (select c.CONV_ID from CONVENIADOS where EMPRES_ID = 45) and
cd.SALDO_DEVEDOR = null

Desde já obrigado
Sidnei Junior

Sidnei Junior

Responder

Posts

20/08/2014

Joel Rodrigues

Ao invés de c.CONV_ID = (select ...
Use o operador IN:
... c.CONV_ID IN (select c.CONV_ID from CONVENIADOS where EMPRES_ID = 45) ... 
Responder

20/08/2014

Joel Rodrigues

Explicando: esse select dentro de parênteses vai retornar vários registros com o ID dos conveniados ligados à empresa 45. Então você verifica se c.CONV_ID está contido nessa coleção de registros.
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar