【问题标题】:MySQL: delete duplicate rows, keep noneMySQL:删除重复的行,不保留
【发布时间】:2018-10-14 16:37:04
【问题描述】:

这里是新手,对于这个表,我想删除所有在事件中没有唯一编号的 ID(行)。到目前为止,我只找到了保留一个 ID,但删除重复项的解决方案。

    +-----------+--------------+----------+--------+
    | ID        | Costs        |   Date   | Event  |
    +-----------+--------------+----------+--------+
    |     1     |      100     |2012/09/10|  5     |
    +-----------+--------------+----------+--------+
    |     2     |      300     |2012/09/20|  5     |
    +-----------+--------------+----------+--------+
    |     3     |      400     |2012/10/01|  4     |
    +-----------+--------------+----------+--------+

我已经尝试过ALTER IGNORE TABLE ADD UNIQUE INDEX 功能,但我不想保留一个ID。例如,在此表中,我想删除 ID 1 和 2 中的行,但保留 ID 3。

注意:所有 ID 都是唯一的。

谢谢。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    您可以使用 HAVING 获取具有重复值的事件,然后在 DELETE 查询中使用它,而不是在 WHERE 条件中使用 ID,不是吗?

    【讨论】:

      猜你喜欢
      • 2021-12-28
      • 2016-09-18
      • 2013-04-08
      • 2019-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多