可能重复:
如何从 MySQL 表中删除重复的行
我有一个包含重复记录的 mysql 表,我想删除所有重复记录。我怎样才能做到这一点?我的表只有几列,1 列可以有重复的记录。这是关于用户注册的,我不希望电子邮件被注册两次。我无法在输入之前检查电子邮件,因为这会使注册过程复杂化,并且必须尽可能简单。
可能重复:
如何从 MySQL 表中删除重复的行
我有一个包含重复记录的 mysql 表,我想删除所有重复记录。我怎样才能做到这一点?我的表只有几列,1 列可以有重复的记录。这是关于用户注册的,我不希望电子邮件被注册两次。我无法在输入之前检查电子邮件,因为这会使注册过程复杂化,并且必须尽可能简单。
您可以以多表形式执行自联接DELETE
:
DELETE u1
FROM users u1 JOIN users u2 USING (email)
WHERE u1.timestamp < u2.timestamp