Удаление повторяющихся записей в таблице DB2

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


person Brandon    schedule 13.09.2010    source источник


Ответы (1)


  1. Создайте еще одну таблицу «no_dups», в которой есть точно такие же столбцы, как и в таблице, из которой вы хотите удалить дубликаты. (Возможно, вы захотите добавить столбец идентификаторов, чтобы упростить идентификацию отдельных строк).
  2. Вставьте в «no_dups», выберите отдельный столбец1, столбец2... столбецN из исходной таблицы. «Выбор отдельного» должен возвращать только одну строку для каждого дубликата в исходной таблице. Если это не так, вам, возможно, придется изменить список столбцов или более внимательно изучить свои данные, они могут выглядеть как дублирующиеся данные, но на самом деле это не так.
  3. Когда шаг 2 будет выполнен, у вас будет исходная таблица, а «no_dups» будет иметь все строки без дубликатов. На этом этапе вы можете сделать что угодно - удалить и переименовать таблицы или удалить все из оригинала и вставить в оригинал, выбрать * из no_dups.
  4. Если у вас возникли проблемы с идентификацией дубликатов, и вы добавили столбец идентификаторов в «no_dups», вы должны иметь возможность удалять строки одну за другой, используя значение столбца идентификаторов.
person Michael Sharek    schedule 13.09.2010