SELECT
p.personid,
p.firstname,
p.lastname,
p.birthdate,
p.deathdate,
p.gedcom
FROM tng_people p
WHERE EXISTS
(
SELECT * FROM tng_people p2
WHERE p2.personid <> p.personid
AND p2.firstname = p.firstname
AND p2.lastname = p.lastname
AND p2.birthdatetr = p.birthdatetr
AND p2.deathdatetr = p.deathdatetr
)
AND p.lastname <> ''
ORDER BY p.firstname, p.lastname;
Report mne velmi překvapil, co všechno odhalil, takže jej budu čas od času využívat ke kontrole celé databáze. O čem vyprávím? Běžně totiž z Legacy importuji osoby s potlačením detailů u žijících osob, a proto tento report žijící osoby nedokáže kontrolovat.
Musím proto do jedné lokální testovací databáze si občas importovat obsah databáze bez potlačení detailů u žijících osob – právě kvůli úplné kontrole možných duplicit.
Opravy vlastních omylů sice bolí, ale jsou nedílnou součástí seriózní práce badatele amatéra.