oracle 删除数据表中的重复
/* 删除重复的反馈表的数据*/
procedure PRO_CZW_DEL_DOU_FEEBACK as
begin
begin
for rec in (select row_number() over(
partition by t.ywlsh /*指定的重复列*/
order by t.id desc) as lev, /*指定的重复列的排序*/
t.*
from T_CZW_YW_FEEDBACK t
where exists (select 1
from T_CZW_YW_FEEDBACK k
where k.ywlsh = t.ywlsh
group by k.ywlsh
having count(*) > 1)) loop
if rec.lev = 1 then
null;
else
delete T_CZW_YW_FEEDBACK t where t.id = rec.id;
end if;
end loop;
end;
commit;
end PRO_CZW_DEL_DOU_FEEBACK;
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。