国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

Oracle數(shù)據(jù)庫刪除兩表中相同數(shù)據(jù)的方法

2024-08-29 13:33:22
字體:
供稿:網(wǎng)友
在Oracle數(shù)據(jù)庫中刪除兩表中相同數(shù)據(jù)的方法是用到in語句,本文通過實(shí)例來講解刪除兩表中相同數(shù)據(jù)的方法。 軟件環(huán)境: 1、Windows NT4.0+ORACLE 8.0.4。 2、Oracle安裝路徑為:C:/ORANT。 問題提出: 1、在做數(shù)據(jù)轉(zhuǎn)儲業(yè)務(wù)的時候,假如發(fā)生操作錯誤,有可能出現(xiàn)主表和副表中都有同一種數(shù)據(jù), 這樣結(jié)算的結(jié)果就有可能發(fā)生錯誤。 實(shí)現(xiàn)方法:
SQL> create table a (2 bm char(4), --編碼3 mc varchar2(20) --名稱4 )5 /
表已建立:
SQL> insert into a values('1111','1111');SQL> insert into a values('1112','1111');SQL> insert into a values('1113','1111');SQL> insert into a values('1114','1111');SQL> insert into a values('1115','1111');SQL> create table b as select * from a where 1=2;
表已建立:
SQL> insert into b values('1111','1111');SQL> insert into b values('1112','1111');SQL> insert into b values('1113','1111');SQL> insert into b values('1114','1111');SQL> commit;
完全提交:
SQL> select * from a;BM  MC---- --------------------1111 11111112 11111113 11111114 11111115 1111SQL> select * from b;BM  MC---- --------------------1111 11111112 11111113 11111114 1111
方法一 exists子句:
SQL> delete from a where exists (select 'X' from b where a.bm=b.bm and a.mc=b.mc);
刪除4個記錄。 where條件:假如兩個表中都擁有相同字段的主鍵(PRimary key),則只需比較兩個主鍵就可以了。 方法二 in子句:
SQL> delete from a where (bm,mc) in (select bm,mc from b);刪除4個記錄.SQL> select * from a;BM  MC---- --------------------1115 1111
實(shí)際測試結(jié)論 在表不是很大時,用in子句速度還可以忍受,而假如記錄量很多時(十萬條以上),in子句速度很慢。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 富裕县| 洛南县| 南通市| 秦皇岛市| 华宁县| 陆河县| 青田县| 惠水县| 宁都县| 鲁山县| 湄潭县| 化德县| 桃园县| 闽清县| 通榆县| 文水县| 历史| 阜康市| 宣威市| 余姚市| 阿克陶县| 大丰市| 昭通市| 喀喇沁旗| 兴义市| 伊吾县| 嵊泗县| 临武县| 简阳市| 康定县| 泸州市| 蓝山县| 黎川县| 珲春市| 法库县| 广平县| 萍乡市| 平乐县| 铜梁县| 屯留县| 红桥区|