在WHERE子句中具有多个条件的Sql UPATE

时间:2015-05-20 11:40:13

标签: sql-update

UPDATE Table1
    SET [Marks] = 
      (
       SELECT
       CASE STATEMENTS
       FROM Table2 T2
   WHERE Table1.ID = T2.ID)              
         )

上述UPDATE语句工作正常,但如果ID不匹配则会为“标记”插入NULL值。 但是如果Table1和Table2 ID不匹配,我想保留Table1中Marks的原始值。 我如何在我的代码中实现它。

我也试过使用WHERE EXISTS但仍然没有运气。我想知道它的用法是什么。

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:0)

UPDATE Table1
SET [Marks] = 
      (
       SELECT
          CASE STATEMENTS
       FROM Table2 T2
       WHERE Table1.ID = T2.ID)              
      )
WHERE id IN (SELECT id FROM table2)
相关问题