Icon

SQL – Jak usunąć zduplikowane rekordy?

maj 19, 2009 dodaj komentarz

Aby usunąć zduplikowane rekordy, np. wtedy gdy tworzymy nowy indeks dla tabeli, można do tego wykorzystać sposób, który jest bardzo szybki i nie skomplikowany:

  1. Utwórz nową, czystą tabelę z identyczną strukturą jak tabela, w której chcesz usunąć zduplikowane rekordy.
  2. Skopiuj wszystkie rekordy które się powtarzają do nowej tabeli wg. schematu:

    INSERT INTO tc_category1
    SELECT * FROM tc_category
    GROUP BY category_id, application_id
    HAVING count(*) > 1

  3. Następnie zrób to samo dla rekordów, które się nie powtarzają wg. schematu:

    INSERT INTO tc_category1
    SELECT * FROM tc_category
    GROUP BY category_id, application_id
    HAVING count(*) = 1
     

  4. Usuń starą tabelę i zmień nazwę nowej.

Reklama

TimeCamp Visikid

Losowy Cytat

“Perfection closes off the process. It makes you deaf. Google purposefully puts out imperfect and unfinished products and says: ‘Help us finish them. What do you think of them?’.”

Książki

Shelfari: Book reviews on your book blog