使用查詢結果更新表的方法
使用一個查詢的結果更新另一個表的資料。
模擬實驗如下,使用t2表的查詢結果,更新t1表相同id的資料。
Oracle有兩種方式:
內聯檢視更新
相關子查詢
MySQL只有下面的這一種方式
不過可以同時修改兩個表的資料.
用t2的playNum更新t1,用t1的nickname更新t2
MySQL和Oracle的方式互不通用。
模擬實驗如下,使用t2表的查詢結果,更新t1表相同id的資料。
-
drop table t1;
-
drop table t2;
-
create table t1(id int primary key,nickname varchar(20),playNum varchar(20));
-
create table t2(id int primary key,nickname varchar(20),playNum varchar(20));
-
insert into t1 values(1,1,10);
-
insert into t1 values(2,2,20);
-
insert into t1 values(3,3,30);
-
insert into t2 values(1,11,100);
-
insert into t2 values(2,22,200);
-
insert into t2 values(3,33,300);
- commit;
Oracle有兩種方式:
內聯檢視更新
-
update (
-
select t1.id t1id ,t1.nickname t1nickname,t1.playNum t1playnum,t2.id t2id ,t2.nickname t2nickname,t2.playNum t2playnum
-
from t1 inner join t2 on (t1.id=t2.id)
-
)
- set t1nickname=t2nickname,t1playnum=t2playnum;
相關子查詢
-
update t1 set (nickname,playNum)=
- (select nickname,playNum from t2 where t1.id=t2.id);
MySQL只有下面的這一種方式
不過可以同時修改兩個表的資料.
用t2的playNum更新t1,用t1的nickname更新t2
-
update t1,t2
-
set t2.nickname=t1.nickname,t1.playNum=t2.playNum
- where t1.id=t2.id;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-1189307/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL 把查詢結果當作"表"來使用SQL
- 使用外部表儲存查詢結果
- PostgreSQL函式:返回表查詢結果集SQL函式
- MySQL 查詢結果取交集的實現方法MySql
- mysql查詢結果多列拼接查詢MySql
- SQL Server對組合查詢結果排序方法SQLServer排序
- mysql根據查詢結果批量更新多條資料(插入或更新)MySql
- 使用ROWNUM將導致查詢結果集的固化
- navicat 匯出查詢結果
- mysql匯出查詢結果MySql
- oracle 查詢結果的各種格式Oracle
- [ORACLE BUG]查詢結果錯誤--臨時表並行Oracle並行
- xsl中,對xml文件查詢的結果再次查詢XML
- 查詢構造器結果--物件陣列互轉方法物件陣列
- Mybatis模糊查詢結果為空MyBatis
- ps aux查詢結果解釋UX
- MySQL查詢結果匯出方式總結MySql
- Mybatis 查詢語句結果集總結MyBatis
- NC65對單表單據查詢的結果進行排序排序
- 巧用臨時表將大結果集轉換為小結果集驅動查詢薦
- 查詢表結構
- [Mysql 查詢語句]——對查詢結果進一步的操作MySql
- 等於NULL的查詢條件導致查詢結果不正確Null
- 表膨脹的查詢方法
- SQL語句將查詢結果插入到另一張表中SQL
- Oracle中把一個查詢結果插入到一張表中Oracle
- PLSQL Developer 複製查詢結果 卡頓SQLDeveloper
- ORDER對查詢結果進行排序排序
- oracle查詢結果外面新增引號Oracle
- Oracle查詢結果 儲存為XMLOracleXML
- SAP QM 檢驗批上各個MIC質檢結果的查詢報表?
- 為 MySQL 的查詢結果新增排名欄位MySql
- UPDATE查詢結果範圍內的資料
- Mysql-基本練習(10-設定分組條件、查詢結果排序、限制查詢結果返回的數量、TRUNCATE刪除表記錄)MySql排序
- 備忘:laravel 對查詢結果集可以迴圈where查詢Laravel
- ES查詢之查詢屬性過濾、結果高亮顯示
- sqlserver表結構查詢SQLServer
- ORACLE高水位表的查詢方法Oracle