sql >> Database teknologi >  >> RDS >> Mysql

Hvordan sletter jeg alle de duplikerede poster i en MySQL-tabel uden midlertidige tabeller

Tilføj Unikt indeks på dit bord:

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

En anden måde at gøre dette på ville være:

Tilføj primærnøgle i din tabel, så kan du nemt fjerne dubletter fra din tabel ved hjælp af følgende forespørgsel:

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. Kalder lagret procedure med Out-parameter ved hjælp af PDO

  2. Oracle SQL PIVOT-tabel

  3. @@IDENTITY, SCOPE_IDENTITY(), OUTPUT og andre metoder til at hente sidste identitet

  4. Hvordan udskriver man VARCHAR(MAX) ved hjælp af Print Statement?