Как сохранить только одну строку таблицы, удалив дублирующиеся строки?

Назначения Outlook являются просто электронными письмами со специальной информацией заголовка. Существует некоторая информация в это учебное руководство на необходимых частях. Я отправил некоторых, встреча приглашает от моего Outlook до моего Gmail, считают и смотрел на необработанные заголовки там - можно изобразить большую часть протокола из этого.

iCalendar спецификации могут помочь Вам, также.

15
задан S.Lott 17 August 2009 в 09:47
поделиться

3 ответа

См. Следующий вопрос: Удаление повторяющихся строк из таблицы .

Адаптированный принятый ответ оттуда (это мой ответ, поэтому здесь нет "воровства". ..):

Вы можете сделать это простым способом, предполагая, что у вас есть уникальное поле идентификатора: вы можете удалить все одинаковые записи, кроме идентификатора, но не имеющие «минимального идентификатора» для их имени .

Пример запроса:

DELETE FROM members
WHERE ID NOT IN
(
    SELECT MIN(ID)
    FROM members
    GROUP BY name
)

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

38
ответ дан 1 December 2019 в 00:54
поделиться

Вероятно, было бы проще выбрать уникальные таблицы в новой таблице, отбросить старую таблицу, а затем переименовать временную таблицу, чтобы заменить ее.

#create a table with same schema as members
CREATE TABLE tmp (...);

#insert the unique records
INSERT INTO tmp SELECT * FROM members GROUP BY name;

#swap it in
RENAME TABLE members TO members_old, tmp TO members;

#drop the old one
DROP TABLE members_old;
4
ответ дан 1 December 2019 в 00:54
поделиться

У нас есть огромная база данных, в которой удаление дубликатов является частью процесса регулярного обслуживания. Мы используем DISTINCT, чтобы выбрать уникальные записи, а затем записать их во ВРЕМЕННУЮ ТАБЛИЦУ. После TRUNCATE мы записываем ВРЕМЕННЫЕ данные обратно в ТАБЛИЦУ.

Это один из способов сделать это, и он работает как СОХРАНЕННАЯ ПРОЦЕДУРА.

0
ответ дан 1 December 2019 в 00:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: