2
我有一个数据库(约300万条记录),其中有多个/重复的记录,在数据库中具有相同的“电子邮件”,我想留下一行以其默认状态0)并更新其他重复项的“status = 5”。 请注意,并非所有记录都有重复。电子邮件地址以base64编码存储。PHP/MySQL - 更新重复条目的行
我有一个数据库(约300万条记录),其中有多个/重复的记录,在数据库中具有相同的“电子邮件”,我想留下一行以其默认状态0)并更新其他重复项的“status = 5”。 请注意,并非所有记录都有重复。电子邮件地址以base64编码存储。PHP/MySQL - 更新重复条目的行
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
是否有一列对每一行都是唯一的?像主键? – 2011-02-02 00:01:59
是的,我的ID是自动增量 – Michael 2011-02-02 00:04:38