【问题标题】:Delete duplicate records compare 5 columns in table [duplicate]删除重复记录比较表中的5列[重复]
【发布时间】:2015-12-30 08:21:53
【问题描述】:

我有 table_a。该表包含的列是, Col1,col2,col3,col4,co5,col6,col7.

我需要删除 col1 到 col5 的重复记录。

我的意思是,

I'd.     Col1  col2    col3    col4   col5
-------  ----  ----    ----    ----   ----

1.        A.    B.      C.       D.    E
2.        B.    D.      R.       Y.    U
3.        A.    B.      C.       D.    E
4.        A.    B.      C.       D.    E
5.        W.    E.      R.       T.    Y
6.        W.    E.      R.       T.    Y

我希望结果 id 只有 1,2,5

任何知道设计 MySQL 查询的人请在此处粘贴解决方案。

【问题讨论】:

    标签: mysql multiple-columns delete-row


    【解决方案1】:

    试试这个:

    SELECT MIN(id), col1,col2,col3,col4,col5
    FROM `table_a`
    GROUP BY col1,col2,col3,col4,col5;
    

    【讨论】:

      【解决方案2】:

      您可以使用此查询删除重复记录

      DELETE FROM table_a WHERE id IN (SELECT id FROM table_a GROUP BY id HAVING COUNT(*) > 1) LIMIT 1

      这会返回你的答案

      【讨论】:

      • 你用过这样的查询吗?它在 MySQL 中有效吗?
      猜你喜欢
      • 2015-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-16
      • 2016-01-07
      • 1970-01-01
      • 2016-09-17
      相关资源
      最近更新 更多