mysql怎么删除数据库中的反复记载?
mysql删除数据库中反复记载的步骤:第一统计反复数据;然后使用“SELECT DISTINCT”语句过滤反复数据;最后在数据表中增加INDEX和PRIMAY KEY来删除表中的反复记载即可。
关于常规的MySQL数据表中大概存在反复的数据,有些状况是同意反复数据的存在,有些状况是不同意的,这个时候我们就需要查寻并删除这些反复数据,以下是详细的处置办法!
相关学习引荐:mysql教程(视频)
办法一:防止表中显现反复数据
当表中未增加数据时,可以在MySQL数据表中设定指定的字段为PRIMARY KEY(主键) 或者 UNIQUE(***) 索引来包管数据的***性。
例如在学生信息表中学号no不同意反复,需设定学号no为主键,且默许值不克不及为NULL。
CREATE TABLE student ( no CHAR(12) NOT NULL, name CHAR(20), sex CHAR(10), PRIMARY KEY (no) );
办法二:过滤删除反复值
关于数据表中原有的数据,想要去除反复数据需要经过反复数据查寻、过滤乃至删除等步骤。
1. 统计反复数据
mysql> SELECT COUNT(*) as repetitions,no -> FROM student -> GROUP BY no -> HAVING repetitions > 1;
以上查询语句将返回student表中反复的记载数。
2. 过滤反复数据
假如需要读取不反复的数据可以在SELECT 语句中使用 DISTINCT 关键字来过滤反复数据。
mysql> SELECT DISTINCT no -> FROM student;
也可以使用 GROUP BY 来读取数据表中不反复的数据
mysql> SELECT no -> FROM student -> GROUP BY (no);
3. 删除反复数据
删除数据表中反复数据,可以使用以下SQL语句:
mysql> CREATE TABLE tmp SELECT no, name, sex FROM student GROUP BY (no, sex); mysql> DROP TABLE student; mysql> ALTER TABLE tmp RENAME TO student;
也可以在数据表中增加INDEX(索引)和 PRIMAY KEY(主键)来删除表中的反复记载,办法如下:
mysql> ALTER IGNORE TABLE student -> ADD PRIMARY KEY (no);
本文来自百分百源码网mysql图文教程频道,欢迎学习!
以上就是mysql如何删除数据库中的反复记载?的具体内容,更多请关注百分百源码网其它相关文章!