永发信息网

mysql 对某几个字段去重

答案:3  悬赏:0  手机版
解决时间 2021-03-31 01:29
mysql 对某几个字段去重
最佳答案
分组下不就行了,delete from table where rowid not in (selelct max(rowid) from table group by id,a);
这样就把重复的数据删掉了。
全部回答
-------------------部分字段重复---------------------
--1.加索引的方式
create table test_2(id int,value int);
insert test_2 select 1,2 union all select 1,3 union all select 2,3;
Alter IGNORE table test_2 add primary key(id);
select * from test_2;
+----+-------+
| id | value |
+----+-------+
| 1 | 2 |
| 2 | 3 |
+----+-------+
我们可以看到 1 3 这条记录消失了
我们这里也可以使用Unique约束 因为有可能列中有NULL值,但是这里NULL就可以多个了..
--2.联合表删除
create table test_2(id int,value int);
insert test_2 select 1,2 union all select 1,3 union all select 2,3;
delete A from test_2 a join (select MAX(value) as v ,ID from test_2 group by id) b
on a.id=b.id and a.value<>b.v;
select * from test_2;
+------+-------+
| id | value |
+------+-------+
| 1 | 3 |
| 2 | 3 |
+------+-------+
--3.使用Increment_auto也可以就是上面全部字段去重的第二个方法
--4.容易错误的方法
--有些朋友可能会想到子查询的方法,我们来试验一下
create table test_2(id int,value int);
insert test_2 select 1,2 union all select 1,3 union all select 2,3;
delete a from test_2 a where exists(select * from test_2 where a.id=id and a.value

目前,您不能从一个表中删除,同时又在子查询中从同一个表中选择。
提供个思路,用select a,b,c,count(distinct id) from table可以只对id相同的去重
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求男主冷傲天,女主裴诗雅的小说,这部小说除
做韩国泡菜一定要放虾酱吗?
轻微交通事故逃逸怎么处罚
为什么原来晚上睡觉前都跟男朋友聊很多才睡现
求CAXA实体设计2013破解补丁 谢谢!
每天正常来说健身多长时间算是标准
该不该原谅背叛过你的人?
21世纪人类必须全力注意的六大事项是:(1)核
女孩姓李 属鸡 五行缺水怎么起名?
江家坞地址有知道的么?有点事想过去
工资2500 上班时间从早上七点多到晚上九点多
友谊可以用什么形容词
世界最大甲虫
3. 无需人工干预,网络节点能够感知其他节点
0.5克指的是一粒是0.5克吗
推荐资讯
什么叫做属地化用工
牙齿平时不痛,只要牙与牙碰一下就庝为什么
被榨油过的花生渣还有营养吗
想请你帮忙,17737267977
两眼轻微外斜视会不会越来越严重
已知男子有0.05是色盲,女子有0.0025是色盲。
用“胜于光阴惜黄金惜古人难买失黄金光阴可寻
原来我也可以说些什么
晒干的大虾怎么做好吃
宁夏今天什么日子?
略施小计,移花接木,从来勉强冇幸福,没法赏
最近家里重新装修,不知道什么原因,全身都痒
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?