не был уверен в том, чтобы поместить это в программное обеспечение или здесь, так что я решил начать здесь я знаю, что это будет прямой ответ от вас SQL гениев ...SQL Query Help - удаление дубликатов
I есть таблица, она содержит контакты, которые я импортирую ежедневно. У меня будет интерфейс ASP.NET для взаимодействия с пользователем. Из этой таблицы я собираюсь отправить их всем почтовым отправителям, но только по одному на каждый адрес. Таким образом, мой конечный результат заключается в том, что пользователь вводит дату (которая соответствует импортированной дате), и им предоставляется результирующая сетка со всеми уникальными адресами, связанными с этой датой. Я только хочу отправить почтовое сообщение на этот адрес один раз - много раз мой первоначальный импортированный список будет содержать несколько компаний по тому же адресу.
Таблица: ContactTable Fielsd: ID, CompanyName, Адрес, Город, Район, Страна, Телефон
Я могу использовать SELECT DISTINCT положение, но мне нужны все данные, связанные с ним (название компании и т.д. .)
У меня более 262000 записей в этой таблице.
Если я выбираю дату выборки 1/10/2011, я получаю 2401 запись. SELECT DISTINCT Адрес с той же даты дает мне 2092 записи. Это выполнимо, я отправил бы этим 2092 людям почтовую программу.
Во-вторых, я должен был бы исторически проверить, отправлен ли почтовый сервер на этот адрес. Я тоже не хочу отправлять другую почтовую программу в тот же бизнес завтра.
Какой у меня лучший способ?
Являются ли ваши адреса очищенными/стандартизованными, чтобы они были одинаковыми? Например, "123 Main St." против «123 Main Street», «St. Louis MO» и «Saint Louis MO» и т. д. –
К сожалению, они не очищены на 100%. Мы получаем эти ежедневные списки от компании, и, честно говоря, это не всегда чистые данные. Мы знаем, что из-за этого произойдет некоторая ошибка, хотя есть ли какая-то настройка, которую я могу сделать для таблицы, прежде чем ее немного почистить? – RogueSpear00
Вам нужна колонка ID в результатах? Похоже, что простой DISTINCT или GROUP BY будут работать, если вы удалили столбец идентификатора (например, SELECT CompanyName, Address, City, State, Zip, Phone FROM ContactTable GROUP BY CompanyName, Address, City, State, Zip, Phone). – Zachary