【发布时间】:2015-07-28 12:36:00
【问题描述】:
我们在 SQL(DB2) as400 中编写了一个清理脚本来清理表。 ps 我们正在修复导致数据问题的进程。
SQL:DELETE FROM p6prodpf A WHERE (0 = (SELECT COUNT(*) FROM P6OPIPF B WHERE B.OPIID = A.OPIID))
它的简单代码检查p6prodpf中是否存在P6OPIPF中没有记录的记录,然后删除p6prodpf中的记录。
我面临的问题是,即使P6OPIPF 中有记录,p6prodpf 也会被删除。
有没有更好的方法或更安全的方法.. 是否有任何原因会发生这种情况。
脚本在凌晨 3 点运行。
这也感觉像是一个排序问题,但是当我检查 P6OPIPF 中的记录时,它存在但它在 p6prodpf 中被删除了。
【问题讨论】: