首頁 > 資料庫 > mysql教程 > sql 删除重复记录

sql 删除重复记录

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-07 17:47:37
原創
1066 人瀏覽過

sql 删除重复记录本文章提供了大量的sql 删除重复记录语句,如果你正在愁如何把数据库重复的数据给删除的话,我们为你提供了多种删除重复记录的sql查询语句。

sql 删除重复记录
本文章提供了大量的sql 删除重复记录语句,如果你正在愁如何把重复的数据给删除的话,我们为你提供了多种删除重复记录的sql查询语句。

select a.*
from temp a  inner join (select name,sex from temp group by name,sex having count(*)>1 ) b
on a.name = b.name and a.sex = b.sex

//来看个删除重复记录实例

//user 表结构
create table user(
varchar(20) uname notnull;
varchar(16) upass ;
);


//建立临时表,并复制user表中不重复的数据
create table  user_tmp as select distinct * from user;

drop table user;//删除user表

alert user_tmp rename user;//将user_tmp表重命名为user

//另一种方法

delete  ccs_users
where userid in(
select max(userid) from ccs_users group by userid having count(*)>1)


看来看一人sql删除重复记录实例

例如:
id?name?value
1?a?pp
2?a?pp
3?b?iii
4?b?pp
5?b?pp
6?c?pp
7?c?pp
8?c?iii
id是主键 要求得到这样的结果
id?name?value
1?a?pp
3?b?iii
4?b?pp
6?c?pp
8?c?iii
方法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=min(id)?from?表?group?by?name,value
)b?on?a.id=b.id
where?b.id?is?null

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
sql文件
來自於 1970-01-01 08:00:00
0
0
0
php - prepare與sql的開銷?
來自於 1970-01-01 08:00:00
0
0
0
列印sql語句
來自於 1970-01-01 08:00:00
0
0
0
sql優化or
來自於 1970-01-01 08:00:00
0
0
0
使用PHP將陣列傳遞給SQL插入查詢
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板