求一个UPDATE SQL语句。已经给出参考语句
UPDATE TESTA.STAOCK SAT
SET ( SAT.PTA_CODE )=(select S.PTA_CODE FROM TESTA.SAM S 
WHERE  TRIM (SAT.ITEMA_CODE ) = TRIM(S.ITEMA_CODE)  AND (NOT S.ITEMA_CODE IS NULL ))
WHERE TRIM(SAT.ITEMA_CODE) IN (SELECT TRIM(KK.ITEMA_CODE) FROM TESTA.SAM KK)上面的语句执行没有问题,但是下面的表格就不行了。 有可能一个MAN 对应多个ITEMA_CODE。UPDATE TESTA.STAOCK SAT
SET ( SAT.PTA_CODE )=(select S.PTA_CODE FROM TESTA.SAM S 
WHERE  TRIM (SAT.MAN ) = TRIM(S.MAN)  AND (NOT S.ITEM_CODE IS NULL ))
WHERE exists (select 1  FROM TESTA.SAM S WHERE TRIM(S.MAN)  = TRIM(SAT.MAN))UPDATE TESTA.STAOCK SAT
SET ( SAT.PTA_CODE )=(select S.PTA_CODE FROM TESTA.SAM S 
WHERE  TRIM (SAT.MAN ) = TRIM(S.MAN)  AND (NOT S.ITEM_CODE IS NULL ))
WHERE TRIM (SAT.MAN ) IN (select TRIM(S.MAN)  FROM TESTA.SAM S )出现:ORA-01407: 无法更新 ("TESTA"."STAOCK"."PTA_CODE") 为 NULL