欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

删除表中重复记录大于两条保存两条

程序员文章站 2024-01-04 09:12:52
...

delete from t_Cht_clm_reg F where F.case_id in ( select T.case_id from ( select B.* from (select e.* , row_number() over (partition by e.notice_id order by e.case_id desc) rn from t_Cht_clm_reg e) B where B.notice_id in( select A.notice_id

delete from t_Cht_clm_reg F where F.case_id in (
select T.case_id from (
select B.* from (select e.* , row_number() over (partition by e.notice_id order by e.case_id desc) rn
from t_Cht_clm_reg e) B where B.notice_id in(
select A.notice_id from (select e.* , row_number() over (partition by e.notice_id order by e.case_id desc) rn
from t_Cht_clm_reg e) A group by A.notice_id having count(A.notice_id) > 2 )
) T where T.RN > 2 )

delete from t_Cht_clm_reg F where F.case_id in (
select T.case_id from (
select  B.* from (select e.* , row_number() over (partition by e.notice_id order by e.case_id desc) rn   
                from t_Cht_clm_reg e) B where B.notice_id in(
select  A.notice_id  from  (select e.* , row_number() over (partition by e.notice_id order by e.case_id desc) rn   
                from t_Cht_clm_reg e) A group by A.notice_id having count(A.notice_id) > 2 )
 ) T where T.RN > 2 )

上一篇:

下一篇: