【发布时间】:2013-02-21 23:07:19
【问题描述】:
您好,我正在运行以下查询来识别重复记录。
SELECT *
FROM unique2 P WHERE EXISTS(SELECT 1 FROM unique2 C
WHERE ( (C.surname) = (P.surname))
AND ( (C.postcode) = (P.postcode))
AND ((( (C.forename) IS NULL OR (P.forename) IS NULL)
AND (C.initials) = (P.initials))
OR (C.forename) = (P.forename))
AND ( (C.sex) = (P.sex)
OR (C.title) = (P.title))
AND (( (C.address1))=( (P.address1))
OR ( (C.address1))=( (P.address2))
OR ( (C.address2))=( (P.address1))
OR instr(C.address1_notrim, P.address1_notrim) > 0
OR instr(P.address1_notrim, C.address1_notrim) > 0)
AND C.rowid < P.rowid);
但是通过这个查询,我无法识别与重复记录匹配的唯一记录 ID。有没有办法识别 重复项以及与这些重复项匹配的唯一记录 ID(我的表具有唯一键)?
【问题讨论】:
标签: oracle duplicates