-1

是否可以根据 Oracle 中另一个表中的值更新表中的值?

我正在尝试完成这样的事情(我知道这不是正确的 UPDATE 语句):

  UPDATE table1 
   SET table1.flag = 1 
  FROM table1 t1 
 INNER JOIN table2 t2
    ON t1.emp_id = t2.emp_id 
 INNER JOIN table3 t3
   ON t2.company = t3.company
 WHERE t1.emp_id = '5632'
   AND l2.company = '83CP'
   AND t1.code = 'LIEU'
4

1 回答 1

1

我希望你在 table1 中有一个主键,所以使用它而不是 rowid 但如果你没有使用

update table1
set flag =1
where rowid in ( select t1.rowid
                 FROM table1 t1 
                      INNER JOIN table2 t2 ON t1.emp_id = t2.emp_id 
                 INNER JOIN table3 t3 ON t2.company = t3.company
                 WHERE t1.emp_id = '5632'
                       AND l2.company = '83CP'
                       AND t1.code = 'LIEU'              
               )
于 2013-06-26T05:31:21.890 回答