亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

數據庫知識點(4)——刪除重復數據

標簽:
MySQL

此篇记录了如何确定数据库中是否有重复的数据,如果有如何将重复的数据删除。

判断数据是否重复时,建议根据能够唯一确定一个对象的属性进行判断,比方说身份证号,一个学校的学生学号,手机号等信息。如果此类属性被确认在数据表中有重复的记录,那么可以确定此条记录重复。

以学生表为例,先用group by,having count 根据学生学号来找出重复的数据,然后将其删除。


学生信息表
图片描述

根据学号(no)查出重复记录。
图片描述

select no ,count(*) from student group  by no having count(*)>1;

查出ID号较小的重复数据,将其删除,只保留ID号最大的数据。

要保留的数据
图片描述

select min(id),no ,count(*) from student group  by no having count(*)>1;

删除数据
图片描述

select a.id,a.no,a.name from student a join(select max(id) as id,no ,count(*) from student group  by no having count(*)>1)b on a.no = b.no and a.id<b.id;

图片描述

delete a from student a join(select max(id) as id,no ,count(*) from student group  by no having count(*)>1)b on a.no = b.no and a.id<b.id;
點擊查看更多內容
3人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
103
獲贊與收藏
598

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消