1.重复记录多,使用中间表,把不重复的记录挑出来,truncate table后再插回来。
2.Delete ppsystem.DISPATCHMATERIAL t where t.rowid!=(select max(t1.rowid) from ppsystem.DISPATCHMATERIAL t1
where t1.factory_code=t.factory_code
and t1.dispatch_date=t.dispatch_date
and t1.issue_no=t.issue_no
and t1.material_code=t.material_code)
select d.factory_code,d.dispatch_date,d.issue_no,d.material_code,count(*) from ppsystem.DISPATCHMATERIAL d
group by d.factory_code,d.dispatch_date,d.issue_no,d.material_code
having count(*) >1
alter table PpSYSTEM.DISPATCHMATERIAL
add constraint pk_DISPATCHMATERIAL primary key (FACTORY_CODE, DISPATCH_DATE, ISSUE_NO, MATERIAL_CODE)
using index
tablespace indx;
alter table PPSYSTEM.DISPATCHMATERIAL
drop constraint PK_DISPATCHMATERIAL cascade;
drop index ppsystem.pk_DISPATCHMATERIAL;