Fazer update em campo vazio

Firebird

30/08/2006

Pessoal

Como poderia fazer um update em um campo recebendo valor de outra tabela. No caso normalmente se faz um update em um campo mas coloca-se valor fixo.

Preciso fazer um update no campo cdclidest ( Cliente destino) que está na tabela FMSOLSERV através do campo cdclidest ( Cliente destino) que está na tabela FMITEMCONTRATO sendo que vários clientes da tabela FMITEMCONTRATO podem ter o Cliente destino ou cliente destinos diferentes que também está na tabela FMSOLSERV. O que acontece é que na tabela FMSOLSERV o campo CDCLIDEST está com o valor 0 o que está dificultando para eu fazer o relatório

Rogério


Rogeranalista

Rogeranalista

Curtidas 0

Respostas

Sremulador

Sremulador

30/08/2006

vc pode utlizar assim

update...
set= (select campo from tabela...)


GOSTEI 0
Rogeranalista

Rogeranalista

30/08/2006

Bom eu fiz assim e deu certo

UPDATE FMSOLSERV F SET F.CDCLIDEST=(SELECT FIRST 1 I.CDCLIDEST
FROM FMITEMCONTRATO I
WHERE I.CDCONTRATO=F.NRCONTRATO
AND I.CDEQUIPAMENTO=F.CDEQUIPAMENTO
AND I.CDRESIDUO=F.CDRESIDUO)
WHERE F.CDCLIDEST = 0

Ainda existem campos com valor null então na última linha coloquei

WHERE F.CDCLIDEST IS NULL

Aparece a mensagem abaixo informando que 59 records were update, dou um commit neles mas vou verificar ainda permanecem nulos, o que poderia fazer ???

Rogério


GOSTEI 0
POSTAR