我要求使用SQL查询查找父子帐户,如果幸存者是Child且Loser是Parent,则避免合并过程。 我在表格x 中有以下格式的记录
Survivor Loser
400-GIZ-514 400-1729E3
表x 是一个临时表,其中的记录存储在基表中 在基表中,这两条记录之间的关系是
ROW_ID PAR_OU_ID
Parent 400-1729E3 NULL
Child 400-GIZ-514 400-1729E3
请帮我查询以识别这些类型的记录并标记它们,以便它们不会被合并到夜间进程中。
答案 0 :(得分:0)
此查询仅检索行没有匹配父项的记录:
SELECT * FROM BASE_TABLE A
WHERE NOT EXISTS (SELECT 1 FROM BASE_TABLE B WHERE A.PAR_OU_ID = B.ROW_ID)
答案 1 :(得分:0)
应该能够使用
从临时表中删除记录DELETE FROM tablex
WHERE EXISTS (
SELECT 1
FROM basetable
WHERE basetable.row_id = tablex.survivor
AND basetable.par_ou_id = tablex.loser
)