从子查询 Oracle SQL 返回的值更新日期字段

Update the date fields from the values returned from a subquery Oracle SQL

我有一个应用程序可以扫描 table 没有处理日期的 ID。处理ID时,处理日期添加到Table 1,如果完成申请,则将整个记录复制到另一个table(table 2)。

我需要比较 table 中的 ID,以查找 table 1 中不在 table 2 中但具有处理日期的 ID。这是一个标志,表明该 ID 已被处理,但从未到达应用程序的末尾并且一直失败。

然后我需要通过将处理日期设置为空来从 table 1 更新这些 ID(记录),以便应用程序在下一个 运行 中选择它。

这是一个获取我需要的 ID 的查询。

SELECT Subject_Number 
From Table1 
WHERE NOT EXISTS(SELECT NULL 
                    FROM Table2 
                    WHERE Table2.Subject_Number = Table1.Subject_Number)
AND Table1.Processed_Date IS NOT NULL.

现在我只需要将此 returns 的 ID 的处理日期更新为 null。

任何帮助将不胜感激。

这个查询是这样的

UPDATE <table> SET <fields> WHERE <table.id> IN (
  SELECT Subject_Number 
  From Table1 
  WHERE NOT EXISTS(
    SELECT NULL 
    FROM Table2 
      WHERE Table2.Subject_Number = Table1.Subject_Number) 
        AND Table1.Processed_Date IS NOT NULL.)