首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL删除重复记录,但根据日期保留一条

MySQL删除重复记录,但根据日期保留一条
EN

Stack Overflow用户
提问于 2018-03-02 09:17:44
回答 1查看 76关注 0票数 0

如何删除所有相同电子邮件地址的记录,但按日期保留最新的记录?MySQL中的日期格式为"0000-00-00“。我有以下问题:

代码语言:javascript
复制
delete from customer
 where date not in (
    select max(data)
      from customer
     group by email)

看起来不管用。

你能展示一下如何在没有任何东西的基础上保留一条记录吗,因为我的记录没有id

EN

回答 1

Stack Overflow用户

发布于 2018-03-02 09:23:17

使用获得每个客户的最新日期的子查询进行连接。

代码语言:javascript
复制
DELETE c1 FROM customer AS c1
JOIN (SELECT email, MAX(date) AS maxdate
      FROM customer
      GROUP BY email) AS c2
ON c1.email = c2.email AND c1.date != c2.maxdate
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49061311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档