Oracle小问题..

勇敢的心515 2010-01-14 05:15:58
请问在Oralce中如何删除重复的记录..?

--
create table student
(
stuID varchar2(30),
stuName varchar2(30),
stuAge number
)
...全文
100 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tjuxl123 2010-01-14
  • 打赏
  • 举报
回复
delete from student where rowid not in (select max(rowid) from student group by stuID, stuName, stuAge);
runbaobao88 2010-01-14
  • 打赏
  • 举报
回复
不知道你怎么算重复的记录,假定三个字段,每个字段的值都一样才算重复。
delete from student where rowid not in (select max(rowid) from student group by stuID, stuName, stuAge);
勇敢的心515 2010-01-14
  • 打赏
  • 举报
回复
select 1?
crazylaa 2010-01-14
  • 打赏
  • 举报
回复
delete from student a
where exists (select 1 from student b
where b.stuName=a.stuName
and (b.stuID<a.stuID
or (b.stuID=a.stuID and b.rowid<a.rowid))
);

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧