Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да изтрия всички дублиращи се записи в MySQL таблица без временни таблици

Добавете Уникален индекс на вашата маса:

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

Друг начин да направите това би бил:

Добавете първичен ключ във вашата таблица, след което можете лесно да премахнете дубликати от таблицата си, като използвате следната заявка:

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 – първа част

  2. Създайте MySQL потребител на Linux чрез командния ред

  3. Mysql синхронизиране на база данни между две бази данни

  4. Можем ли да свържем отдалечена база данни MySQL в Android с помощта на JDBC?

  5. Изтриване на редове с MySQL LEFT JOIN