如何用sql语句删除一个表中重复的数据(只保留一条)
我有一个表,里面有ABCDE五个字段,我想把其中ABC三个字段完全相同的记录找出来,然后删除掉(但要保留其中一条),请问SQL语句怎么写?我的数据库是oracle...
我有一个表,里面有ABCDE五个字段,我想把其中ABC三个字段完全相同的记录找出来,然后删除掉(但要保留其中一条),请问SQL语句怎么写?我的数据库是oracle
展开
3个回答
展开全部
delete from Table where id not in(select max(id) from Table
group by (A+B+C))
满足你的要求,希望对你有用
group by (A+B+C))
满足你的要求,希望对你有用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delete from T where T.rowid!=(select max(rowid) from T t where student.A=t.A and student.B=t.B and student.C=t.C);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delete
from Table t1
where rowid !=
(select max(rowid) from Table t2 where t1.A=t2.A and t1.B=t2.B and t1.C=t1.C)
from Table t1
where rowid !=
(select max(rowid) from Table t2 where t1.A=t2.A and t1.B=t2.B and t1.C=t1.C)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询