時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(1)
以前的一篇?jiǎng)h除重復(fù)記錄的雖然還不錯(cuò) 但是在我遇到重量級(jí)的大表時(shí)還是顯的力不從心,不小心想到一種新的方法
思路1、保存不重復(fù)的記錄
2、保存重復(fù)記錄中的一個(gè)rowid
//3、刪除原表中rowid不為步驟2中rowid的記錄 ,留下重復(fù)數(shù)據(jù)中的一條
3.找出記錄中rowid為步驟2中rowid的記錄
4 、1和3數(shù)據(jù)連接就是所要的數(shù)據(jù)了
具體操作例子
第一步:
SQL> create table xxfgs_sig as (select imeid imeid,max(dn) dn,max(xlh) xlh,max(pro_name) pro_name,max(area_name) area_na
me,max(brand) brand,max(m_type) m_type from xxfgs group by imeid having count(*)<2);
第二步:
SQL> create table xxfgs_row as (select max(rowid) rowdata,imeid from xxfgs group by imeid having count(*)>1);
//第三步:////可以考慮給meid建索引
//SQL>delete from xxfgs where rowid not in (select rowdata from xxfgs_row);
//或者
//SQL>delete from xxfgs a where a.rowid <>(select rowdata from xxgs_row b where a.meid=b.meid);
第三步:
SQL>create table xxfgs_dub as (select * from xxfgs where rowid in (select rowdata from xxfgs_row));
第四步:
SQL>insert into xxfgs_sig select * from xxfgs_dub;
關(guān)鍵詞標(biāo)簽:Oracle
相關(guān)閱讀
熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索
人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法