程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql刪除重復記錄的sql語句與查詢重復記錄(1/4)

mysql刪除重復記錄的sql語句與查詢重復記錄(1/4)

編輯:MySQL綜合教程


方法1
delete yourtable
where [id] not in (
select max([id]) from yourtable
group by (name + value))
方法2
delete a
from 表 a left join(
select (id) from 表 group by name,value
)b on a.id=b.id
where b.id is null
查詢及刪除重復記錄的sql語句
查詢及刪除重復記錄的sql語句
1、查找表中多余的重復記錄,重復記錄是根據單個字段(peopleid)來判斷
select * from people
where peopleid in (select peopleid from people group by peopleid having count(peopleid) > 1)
2、刪除表中多余的重復記錄,重復記錄是根據單個字段(peopleid)來判斷,只留有rowid最小的記錄
delete from people
where peopleid in (select peopleid from people group by peopleid having count(peopleid) > 1)
and rowid not in (select min(rowid) from people group by peopleid having count(peopleid )>1)
3、查找表中多余的重復記錄(多個字段)
select * from vitae a
where (a.peopleid,a.seq) in (select peopleid,seq from vitae group by peopleid,seq having count(*) > 1)  1 2 3 4

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved