146 刪除姓名 年齡重複的記錄

2021-10-14 11:00:16 字數 646 閱讀 9930

id name age salary

1 yzk 80 1000

2 yzk 80 2000

3 tom 20 20000

4 tom 20 20000

5 im 20 20000

a. 使用distinct 去重:

select distinct name from persons(distinct 只能去除結果集中一模一樣的資料)

b. 獲取不重複資料思考1:

select name, age from persons group by name, gender

c. 獲取不重複資料思考2:

select max(id) as expr1, name, gender from persons group by name, age

d. 獲取不重複資料:

select * from persons where id in ( select max(id) as expr1 from persons group by name, age )

e. 刪除重複的資料:

delete from persons where id not in ( select max(id) as expr1 from persons group by name, age )

刪除重複的記錄

因是手動錄入資料,所以經常會產生重複的資料,這時就需要刪除多餘的資料。建立測試用表 可以看到 allen 和 smith 這兩個人的資料重複了,現在要求表中name重複的資料只保留一行,其他的刪除。刪除資料有好幾種方法,下面介紹三種方法。方法一 通過name相同,id不同的方式來判斷。sql 如下 ...

刪除重覆記錄

我們經常在資料庫中有重複的記錄這時候我們希望刪除那些重複的記錄 你不要告訴我你是一條條手動刪除的哈 select distinct into newtable form 程式設計客棧nbsp tablename drop table tabwww.cppcns.comlename select in...

SQL查詢重覆記錄,刪除重覆記錄

1 查詢表中多餘的重覆記錄,重覆記錄是根據單個字段 docid 來判斷 select from tablename where docid in select docid from tablename group by docid h ing count docid 1 例二 select from...