Поиск строк с дублирующимися данными в MS Access - PullRequest
0 голосов
/ 05 июня 2009

У меня есть большая таблица, в которой, помимо прочего, указаны фамилия и дата рождения. Мне нужно написать запрос, который возвращает только те строки, где фамилии и даты рождения эквивалентны тем, которые находятся в другой строке таблицы.

Эта таблица содержит информацию о людях, которые подали заявку. Я хочу идентифицировать тех, кто подал заявку более одного раза.

Я могу придумать, как это сделать, используя операции над множествами, но MS Access, похоже, не реализует их.

Спасибо за вашу помощь.

Ответы [ 3 ]

1 голос
/ 06 июня 2009

Есть ли вероятность, что фамилия была слегка ошибочно введена? Либо случайно, либо умышленно лицом, либо фамилия может быть написана по-разному в зависимости от языка, на котором они исходили.

Если это так, рассмотрите возможность использования алгоритма Soundex или первых двух или трех символов имени и фамилии. Если вы собираетесь использовать алгоритм Soundex, я бы предложил сначала обновить таблицу значением поля Soundex, а не вычислять его по мере продвижения.

1 голос
/ 05 июня 2009

MS Access имеет встроенный мастер построения запросов для поиска дубликатов

http://www.databasedev.co.uk/query-wizard.html

0 голосов
/ 06 июня 2009

Как упоминал DJ, в Access есть мастер для поиска дупликов. Этот мастер использует предложение HAVING. Так что, если вы говорите, что хотите «сделать это на SQL», я бы посоветовал прочитать статью HAVING.

...