国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

mysql 數(shù)據(jù)庫超強(qiáng)刪除重復(fù)數(shù)據(jù)語句

2024-07-24 12:37:37
字體:
供稿:網(wǎng)友

在mysql中刪除重復(fù)數(shù)據(jù)的方法各千種,但我百度了N種刪除重復(fù)數(shù)據(jù)方法,個(gè)人測試小數(shù)據(jù)量還沒有問題,大數(shù)據(jù)量就卡死了,下面我來介紹超強(qiáng)刪除重復(fù)數(shù)據(jù)語句實(shí)例,各位朋友有興趣可參考.

月小升今天遇到的問題是students這個(gè)表有md這個(gè)字段重復(fù),看看如何處理吧,代碼如下:

  1. select * from students 
  2. where md in (select md from students group by md having count(md) > 1) order by md 

注明,這個(gè)被group的字段,請索引,否則很慢,代碼如下:

  1. delete from students 
  2. where md in (select md from students group by md having count(md) > 1) 
  3. and id not in (select min(id) from students group by md having count(md )>1) 

這個(gè)語句在mysql下會(huì)報(bào)錯(cuò):#1093 – You can’t specify target table ‘students’ for update in FROM clause

原因是好像mysql不準(zhǔn)許我們進(jìn)行聯(lián)合刪除內(nèi)有條件語句指向自己的表,策略是使用臨時(shí)表,存儲(chǔ)那些要?jiǎng)h除的ID,代碼如下:

  1. create table tmp (id int); 
  2. insert into tmp (id) select id from students 
  3. where md in (select md from students group by md having count(md) > 1) 
  4. and id not in (select min(id) from students group by md having count(md )>1);  --Vevb.com 
  5. delete from students where id in (select id from tmp); 

得出會(huì)被刪除的數(shù)據(jù),代碼如下:

  1. select * from students 
  2. where md in (select md from students group by md having count(md) > 1) 
  3. and id not in (select min(id) from students group by md having count(md )>1) 

得出過濾后的數(shù)據(jù),不刪除的數(shù)據(jù),如果不用刪除,此sql語句可以用來顯示唯一數(shù)據(jù),代碼如下:

  1. select * from students 
  2. where 
  3. id in (select min(id) from students group by md having count(md )>1)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 扶沟县| 鞍山市| 吉安县| 娱乐| 石嘴山市| 蓝山县| 澄迈县| 华宁县| 双城市| 阿巴嘎旗| 洛宁县| 汾阳市| 谢通门县| 扬州市| 平利县| 岐山县| 日土县| 磴口县| 邮箱| 禹州市| 肇庆市| 廉江市| 新宾| 通榆县| 广昌县| 安仁县| 昌江| 扎鲁特旗| 友谊县| 武川县| 双城市| 科技| 新丰县| 微博| 潼南县| 青铜峡市| 石林| 阳山县| 贡觉县| 武山县| 唐海县|