Dúvida SQL - UPDATE
Pessoal,
Estou tendo problemas com uma instrução SQL, eu quero fazer um update para os registros em comum em duas tabelas, eu atualizo um valor quando um sequencial de uma tabela é igual ao outro.
update REGG125aju set REGG125aju.VL_PARC_PASS = (SELECT AJ031.VALOR_INFORMADO FROM AJ031
WHERE REGG125AJU.SEQ = AJ031.SEQ_G125)
Acontece que nos registros do REGG125AJU que não tem no AJ031, ele está colocando NULL no campo VL_PARC_PASS, ou seja, ele faz correto quando a condição atende e coloca NULL quando não atende o que obviamente não é o que eu quero que aconteça. Como eu faço para consertar esta instrução?
Estou tendo problemas com uma instrução SQL, eu quero fazer um update para os registros em comum em duas tabelas, eu atualizo um valor quando um sequencial de uma tabela é igual ao outro.
update REGG125aju set REGG125aju.VL_PARC_PASS = (SELECT AJ031.VALOR_INFORMADO FROM AJ031
WHERE REGG125AJU.SEQ = AJ031.SEQ_G125)
Acontece que nos registros do REGG125AJU que não tem no AJ031, ele está colocando NULL no campo VL_PARC_PASS, ou seja, ele faz correto quando a condição atende e coloca NULL quando não atende o que obviamente não é o que eu quero que aconteça. Como eu faço para consertar esta instrução?
Paulo Conrado
Curtidas 0
Respostas
Paulo Conrado
10/03/2012
Eu acabei conseguindo com essa instrução abaixo:
update REGG125aju set REGG125aju.VL_PARC_PASS = (SELECT FIRST 1 AJ031.ICMS_INFORMADO FROM AJ031
WHERE REGG125AJU.SEQ = AJ031.SEQ_G125)
Where Exists
(SELECT FIRST 1 AJ031.ICMS_INFORMADO FROM AJ031
WHERE REGG125AJU.SEQ = AJ031.SEQ_G125)
Caso vocês conheça alguma outra forma mais eficaz eu gostaria de saber.
mais uma vez obrigado.
update REGG125aju set REGG125aju.VL_PARC_PASS = (SELECT FIRST 1 AJ031.ICMS_INFORMADO FROM AJ031
WHERE REGG125AJU.SEQ = AJ031.SEQ_G125)
Where Exists
(SELECT FIRST 1 AJ031.ICMS_INFORMADO FROM AJ031
WHERE REGG125AJU.SEQ = AJ031.SEQ_G125)
Caso vocês conheça alguma outra forma mais eficaz eu gostaria de saber.
mais uma vez obrigado.
GOSTEI 0