Oracle não suporta
join
na update
sintaxe:UPDATE T123
SET COL1 = 1,
VER1 = VER1 + 1
WHERE EXISTS (SELECT 1 FROM WAPTDT_123 T WHERE T123.REQUEST_ID = T.NUM_FLD);
Este é o SQL padrão e deve funcionar em qualquer banco de dados.
Sua consulta também tem outros problemas. . . a subconsulta não está entre parênteses, a
inner join
não tem primeira mesa. EDITAR:
Você pode escrever esta consulta com essa subconsulta:
UPDATE T123
SET COL1 = 1,
VER1 = VER1 + 1
WHERE T123.REQUEST_ID IN (SELECT C1 FROM ( SELECT T.NUM_FLD C1 FROM WAPTDT_123 T) TAB );
Mudei para um
IN
, só porque essa é outra opção. Você ainda pode usar EXISTS
.