最簡單的複製:
insert into a (kcdm,zklb,kksj_i) select kcdm,zklb,kksj_i from b
產生疑惑的地方: 如果a有乙個自增的id, 語句該怎麼寫?
開始想法: insert into a (id,kcdm,zklb,kksj_i) select seq_a_id.nextval,kcdm,zklb,kksj_i from b 但是seq_a_id.nextval 是a的,select from b能獲取到嗎?明顯很難。
如果a有自增的id,這個時候需要建立seq和對應的trigger,語句和上面一樣。可以自動生成id。
insert into tablea (id,kcdm,zklb,kksj_i,remark) values(tablea.nextval,?,?,?,?)
刪除重複資料:
簡單刪除 : delete from b where b.kcdm = (select kcdm from a )
多列刪除: delete from exam_kkkc a where exists (select kcdm,zklb from tp_global_kkkc_history b where a.kcdm=b.kcdm and a.zklb = b.zklb)
delete from exam_kkkc a where exists (select b.kcdm,b.zklb from tp_global_kkkc_history b where a.kcdm=b.kcdm and a.zklb = b.zklb and b.ndm = ? and b.zklb = ? )
Oracle刪除重複資料
在oracle中,有個隱藏了自動rowid,裡面給每條記錄乙個唯一的rowid,我們如果想保留最新的一條記錄,我們就可以利用這個字段,保留重複資料中rowid最大的一條記錄就可以了。下面是查詢重複資料的乙個例子 select a.rowid,a.from 表名 a where a.rowid sel...
ORACLE刪除重複資料
我們可能會出現這種情況,某個表原來設計不周全,導致表裡面的資料資料重複,那麼,如何對重複的資料進行刪除呢?重複的資料可能有這樣兩種情況,第一種時表中只有某些字段一樣,第二種是兩行記錄完全一樣。一 對於部分字段重複資料的刪除 先來談談如何查詢重複的資料吧。下面語句可以查詢出那些資料是重複的 selec...
Oracle刪除表中重複資料
1.建立臨時表 備份全部資料到 create table tmap.t comm customer col log 731all as select from tmap.t comm customer col log 2.建立臨時表 備份資料 去除重複項 create table tmap.t co...