PHP/MySQL - 更新具有重复条目的行

Mic*_*el 2 mysql sql sql-update

我有一个数据库(大约300万条记录),它有多个/重复的记录,在数据库中有相同的"电子邮件",我想留下一行的默认状态(0)并更新"status = 5"重复.请注意,并非所有记录都有重复记录.电子邮件地址以base64编码存储.

The*_*ter 9

UPDATE tbl
JOIN (
    SELECT email, MIN(ID) minID
    FROM tbl
    GROUP BY email
    HAVING COUNT(*) > 1) t2 ON tbl.email = t2.email AND tbl.id != t2.minID
SET tbl.status = 5
Run Code Online (Sandbox Code Playgroud)