Oracle資料去重保留一條
多個條件分組
delete from M_BASEPRICE_0719_CC m where (m.brand_code,m.supplier_code,m.part_code_m) in (select brand_code,supplier_code,part_code_m
from M_BASEPRICE_0719_CC group by brand_code,supplier_code,part_code_m having count(*) > 1)
and rowid not in (select min(rowid)
from M_BASEPRICE_0719_CC
group by brand_code,supplier_code,part_code_m
having count(*) > 1);
單個條件分組
delete from M_BASEPRICE_JL m where m.part_code_m in (select part_code_m
from M_BASEPRICE_JL group by part_code_m having count(*) > 1)
and rowid not in (select min(rowid)
from M_BASEPRICE_JL
group by part_code_m
having count(*) > 1);
注意:多個條件分組的in前後必須是多個條件,不然會多删,血的教訓,假如幾百萬條資料,删多了再補就很麻煩的
标簽:code,group,part,rowid,BASEPRICE,Oracle,資料,select
來源: https://www.cnblogs.com/chengjiliang/p/11150731.html