从子查询 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.)
我有一个应用程序可以扫描 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.)