MySQL中处理各种重复的一些方法

2019-01-05 09:51:49刘景俊

    确定哪一列包含的值可能会重复。     在列选择列表中随着COUNT(*)列出的那些列。     以及在GROUP BY子句中列出的列。     新增的HAVING子句消除了独特的值要求的组数大于1。

消除重复查询结果:

可以使用DISTINCT与SELECT语句一起找出表中唯一的纪录。

mysql> SELECT DISTINCT last_name, first_name -> FROM person_tbl -> ORDER BY last_name;

DISTINCT是添加一个GROUP BY子句中命名的列,选择的另一种方法。这具有除去重复和只选择的独特的组合中的指定的列的值的效果:

mysql> SELECT last_name, first_name -> FROM person_tbl -> GROUP BY (last_name, first_name);

删除重复使用表更换:

如果在一个表中有重复的记录,想从该表中删除所有的重复记录,看看下面程序的例子。

mysql> CREATE TABLE tmp SELECT last_name, first_name, sex -> FROM person_tbl; -> GROUP BY (last_name, first_name); mysql> DROP TABLE person_tbl; mysql> ALTER TABLE tmp RENAME TO person_tbl;

从一个表中删除重复记录的一个简单的方法是添加KEY,表索引或PRIMAY。如果该表已经是可用的,那么使用此方法删除重复的记录。

mysql> ALTER IGNORE TABLE person_tbl -> ADD PRIMARY KEY (last_name, first_name);


您可能感兴趣的文章:

mysql insert if not exists防止插入重复记录的方法mysql删除重复记录语句的方法mysql 数据表中查找重复记录