Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak usunąć wszystkie zduplikowane rekordy w tabeli MySQL bez tabel tymczasowych?

Dodaj unikalny indeks na twoim stole:

ALTER IGNORE TABLE `TableA`   
ADD UNIQUE INDEX (`member_id`, `quiz_num`, `question_num`, `answer_num`);

Innym sposobem na zrobienie tego byłoby:

Dodaj klucz podstawowy do swojej tabeli, a następnie możesz łatwo usunąć duplikaty z tabeli za pomocą następującego zapytania:

DELETE FROM member  
WHERE id IN (SELECT * 
             FROM (SELECT id FROM member 
                   GROUP BY member_id, quiz_num, question_num, answer_num HAVING (COUNT(*) > 1)
                  ) AS A
            );


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Włącz LOAD DATA LOCAL INFILE

  2. Jak ustawić ustawienia regionalne dla bieżącego połączenia w MySQL?

  3. Wyczyść pamięć podręczną zapytań MySQL bez restartowania serwera

  4. Co to jest SQL? Co to jest baza danych? Systemy zarządzania relacyjnymi bazami danych (RDBMS) wyjaśnione w prostym języku angielskim.

  5. MySQL SELECT WHERE datetime pasuje do dnia (a niekoniecznie do godziny)