--建立兩張測試表
create table table1(
id varchar2(10) ,
val varchar2(20)
); create table table2(
id varchar2(10),
val varchar2(20)
);--分別給兩張測試表插入測試資料
insert into table1 values ('01','1111');
insert into table1 values ('02','222');
insert into table1 values ('02','2222');
insert into table1 values ('03','3333');
insert into table1 values ('04','4444');
insert into table1 values ('06','6666');
commit;
insert into table2 values ('01','aaaa');
insert into table2 values ('02','bbbb');
insert into table2 values ('03','cccc');
insert into table2 values ('04','dddd');
insert into table2 values ('05','eee');
commit;
--查詢一下兩張表
select * from table1
select * from table2
--table1中id=06 val有值,但是table2中id無06,結果table1 id=06對應的val被清空
--這種寫法,表2中id在表1中有的val就會被同步更新過去,表2沒有的id,表1對應val內容會被清空。
update table1 set table1.val = (select table2.val from table2 where table2.id = table1.id);
--正確寫法:對於 table1中存在,但是table2中沒有的id欄位記錄,不做修改;
--這種寫法,更新前先判斷表1中對應的id在表2中是否存在,不存在就跳過。存在就把表2的val更新過去
update table1
set table1.val = (select table2.val from table2 where table2.id = table1.id)
where exists(select 1 from table2 where table2.id = table1.id);
--跨表更新特定條件的一條記錄到其它表
update table1 set table1.val = (select table2.val from table2 where table2.id = table1.id) where table1.id='03';
--刪除測試表
drop table table1;
drop table table2;
TinyOS更新方法
介紹兩種方法 在linux或者cygwin環境下更新 設定環境變數 export cvsroot pserver anonymous tinyos.cvs.sourceforge.net cvsroot tinyos 接入命令 cvs d pserver anonymous tinyos.cvs.s...
軟體更新方法
軟體更新方法 摘要 本發明涉及通訊領域,公開了一種軟體更新方法,使得能夠在一次更新過程中,提供軟體新增功能的無縫銜接和新版本軟體的格式更改,同時使得軟體公升級方法對未來的未知需求有最佳的適應能力,並能提高軟體公升級效率。本發明將要公升級的軟體分為三個部分 新版本軟體包頭部 與軟體公升級相關的部分和其...
Android Studio SDK 更新方法
1 sudo vim hosts 輸入密碼後進行編輯,新增如下幾行 1 2 3 4 5 6 7 google主頁 203.208.46.146 www.google.com 這行是為了方便開啟android開發官網 現在好像不翻也可以開啟 在preference中進行設定,修改配置如下 然後勾選強制...