更新加入时出错

2022-01-17 00:00:00 sql-update sql oracle

我收到了这个错误

这是我当前的错误:ORA-00971:缺少 SET 关键字

This is my Current error: ORA-00971: missing SET keyword

UPDATE FGMULTI (JOIN arinvt ar 
 ON  fgmulti.arinvt_id = ar.id)

 SET NON_CONFORM_ALLOCATABLE = 'Y'

 WHERE IN_Date = CurrentDate 
  AND ar.Class LIKE 'CP%' 
  (OR ar.Class LIKE 'FG%' 
  OR ar.Class LIKE 'IN%' 
  OR ar.Class LIKE 'LA%' 
  OR ar.Class LIKE 'PK%')

推荐答案

使用 update for select by join

use update for select by join

 UPDATE (select NON_CONFORM_ALLOCTABLE
         from FGMULTI 
          JOIN arinvt ar 
          ON  fgmulti.arinvt_id = ar.id 
         WHERE IN_Date = CurrentDate 
         AND ar.Class LIKE 'CP%' 
         OR ar.Class LIKE 'FG%' 
         OR ar.Class LIKE 'IN%' 
         OR ar.Class LIKE 'LA%' 
         OR ar.Class LIKE 'PK%') t
 SET t.NON_CONFORM_ALLOCATABLE = 'Y' 

相关文章