Oracle 刪除重複資料之分析函式

2021-08-22 15:25:36 字數 593 閱讀 4296

有個表內有1677萬條資料,而不同的有571萬。當並不是每個欄位都相同的內容,比如有100個同名同姓的人,只是薪水不一樣了,其他字段內容一樣。

就不能用rowid方法據據oracle帶的rowid屬性,進行判斷,是否存在重複,語句如下:查資料: select * from table1 a where rowid !=(select max(rowid) from table1 b where a.name1=b.name1 and a.name2=b.name2......) 刪資料:delete from table1 a where rowid !=(select max(rowid) from table1 b where a.name1=b.name1 and a.name2=b.name2......) 而用

delete from emp2 2 where rowid in 3 (select rowid 4 from (select rowid, 5 row_number() over (partition by empno order by empno) rn 6 from emp2) 7 where rn > 1);

根據員工號相同的來刪除,並且只留下一行

Oracle 刪除重複資料之分析函式

有個表內有1677萬條資料,而不同的有571萬。當並不是每個欄位都相同的內容,比如有100個同名同姓的人,只是薪水不一樣了,其他字段內容一樣。就不能用rowid方法據據oracle帶的rowid屬性,進行判斷,是否存在重複,語句如下 查資料 select from table 1 awhere ro...

Oracle刪除重複資料

在oracle中,有個隱藏了自動rowid,裡面給每條記錄乙個唯一的rowid,我們如果想保留最新的一條記錄,我們就可以利用這個字段,保留重複資料中rowid最大的一條記錄就可以了。下面是查詢重複資料的乙個例子 select a.rowid,a.from 表名 a where a.rowid sel...

ORACLE刪除重複資料

我們可能會出現這種情況,某個表原來設計不周全,導致表裡面的資料資料重複,那麼,如何對重複的資料進行刪除呢?重複的資料可能有這樣兩種情況,第一種時表中只有某些字段一樣,第二種是兩行記錄完全一樣。一 對於部分字段重複資料的刪除 先來談談如何查詢重複的資料吧。下面語句可以查詢出那些資料是重複的 selec...