Heim > Datenbank > MySQL-Tutorial > MySQL löscht doppelte Daten und behält die kleinste ID bei

MySQL löscht doppelte Daten und behält die kleinste ID bei

一个新手
Freigeben: 2017-10-13 10:11:18
Original
2137 Leute haben es durchsucht

Suchen und löschen Sie doppelte Daten im Internet und behalten Sie die Daten mit der kleinsten ID. Die Methode ist wie folgt:


DELETE
FROM
    people
WHERE
    peopleName IN (
        SELECT
            peopleName
        FROM
            people
        GROUP BY
            peopleName
        HAVING
            count(peopleName) > 1
    )
AND peopleId NOT IN (
    SELECT
        min(peopleId)
    FROM
        people
    GROUP BY
        peopleName
    HAVING
        count(peopleName) > 1
)
Nach dem Login kopieren

Wenn Sie es selbst verwenden, Es wird eine Fehlermeldung angezeigt:


1 delete from tb where id in (SELECT max(id) from tb GROUP BY user HAVING count(user)>1)
Nach dem Login kopieren

[Err] 1093 – Sie können die Zieltabelle „XXX“ für die Aktualisierung nicht in der FROM-Klausel angeben

Ich weiß noch nicht, was die Ursache ist.

Finden Sie dann eine Möglichkeit, die Vorgänge zu verteilen. Filtern Sie zunächst die Daten mit doppelten Benutzern heraus und wählen Sie dann mit max() die größere Zeile aus:

SELECT max(id) from tb GRUPPE NACH Benutzer MIT Anzahl(Benutzer)>1

Dann löschen Sie die redundanten Daten nacheinander entsprechend der erhaltenen Max(ID)


1 delete from tb where id=xx
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonMySQL löscht doppelte Daten und behält die kleinste ID bei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage