За прошедшие годы в наши таблицы данных было добавлено несколько дубликатов из-за орфографических ошибок. Так, например, кто-то неправильно написал имя и вместо О'лири написал Олеари. Наша система считает это совсем другим именем и не жалуется на это, однако в большинстве случаев это один и тот же контакт, введенный дважды (эту систему я не создавал).
Теперь я хочу удалить все эти дубликаты, но мне трудно создать запрос, чтобы отобразить их все. Я поэкспериментировал с UTL_MATCH и написал запрос, который вернет все похожие имена, если я укажу имя.
select first_name from customers
where UTL_MATCH.edit_distance_similarity(first_name,'Oleary') > 60
order by first_name;
Однако я хотел бы создать запрос, который автоматически возвращал бы все возможные дубликаты без необходимости указывать имя. Может ли кто-нибудь указать мне правильное направление, пожалуйста?