mysql去重

 

1、查询去重数据

select *, count(distinct name) from table group by name

2.避免重复数据

如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用:

insert ignore into table_name(email,phone,user_id) values(‘[email protected]‘,‘99999‘,‘9999‘),这样当有重复记

录就会忽略,执行后返回数字0,还有个应用就是复制表,避免重复记录:

3、删除重复数据,只保留一条

DELETE FROM `noid`USING `noid`,
( SELECT DISTINCT MIN(`id`) AS `id`,`name`,`add` FROM `noid` GROUP BY `name`,`add` HAVING COUNT(1) > 1) AS `t2`
WHERE `noid`.`name` = `t2`.`name` AND `noid`.`add` = `t2`.`add` AND `noid`.`id` <> `t2`.`id`;

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。