确定哪一列包含的值可能会重复。
在列选择列表中随着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 数据表中查找重复记录