oracle去除重複行資料(保留重複行的一行)

2021-09-24 11:23:55 字數 1001 閱讀 3168

在oracle實際應用過程中,可能會遇到沒有設定主鍵的表,會出現表的資料重複的情況,比如誤操作重複執行插值語句且直接commit,這時候就需要刪除重複資料,只保留單一資料,話不多說,**走起。

建表語句(建個簡單的表練手就好)

create table del(

name varchar2(30),

val number);

插值

insert into del values('a',1);

insert into del values('a',1);

insert into del values('a',1);

insert into del values('b',2);

insert into del values('b',2);

commit; --實際上估計沒人會出現這樣的插值錯誤,只是模擬一下

select * from del;截圖如下

資料去重方法

方法1、直接建個新錶儲存篩選後的資料

create table del2 as select distinct * from del;
select * from del2;截圖如下

方法2、在原表操作,對rowid進行操作,效率最高。

delete from del d1

where d1.rowid < (select max(rowid) from del d2 where d1.name = d2.name)

select * from del;截圖如下

sqlserver 去除重複的行資料

利用distinct 關鍵字過濾重複的行,將查詢的結果寫入臨時表 select distinct into temp from mytable 刪除原表的資料delete mytable 將臨時表插入到表中insert mytable select from temp 釋放臨時表drop table...

sql去除重複資料 保留一條

去除重複資料 保留一條 delete from evaluation where id not in select max id from evaluation where convert varchar 100 adddate,23 2014 04 08 group by content id t...

Python 去除txt檔案中重複的行數

1.前言 採用python中set 的概念,通過遍歷原始文件中的元素,並將其新增到set 中,然後根據set 的性質來判斷新的元素是否要被新增到新的文件中去。最終生成的新的文件即滿足所需。2.實現 coding utf 8 readdir original file.txt writedir new...