sql去除重复数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql去除重复数据相关的知识,希望对你有一定的参考价值。
1,采用存储过程添加测试数据
CREATE PROCEDURE NewProcedure()
BEGIN
DECLARE i INT;
SET i=1;
WHILE i<50000 DO
INSERT INTO user_new (id,name,phone,sex) VALUES (i,i,i,i);
SET i = i + 1;
END WHILE;
END;
两次插入,修改后一次存储过程的id取值,于是得到了name,phone,sex重复的5W条数据(时间有限,未操作更大数量)
2,数据去重
常见方式:
一、
update user_new set data_status=0 where id not in
(select max(id) as id from t_testr_res_indicate group by name,phone,sex
);
二、重复数据量少使用
update user_new set data_status=0 where id not in
(select max(id) as id from user_new group by name,phone,sex having count(*)>1
) and
id in
(select id from user_new group by name,phone,sex having count(*)>1
) ;
以上是关于sql去除重复数据的主要内容,如果未能解决你的问题,请参考以下文章