百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> mysql怎么删除数据库中的反复记载?
分享文章到:

mysql怎么删除数据库中的反复记载?

发布时间:09/01 来源:未知 浏览: 关键词:

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如何删除数据库中的反复记载?的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板