insert all 的使用方法

2021-06-16 12:02:14 字數 1989 閱讀 8202

insert all   

when a1='001' then into a1

when a1='002' then into a2

when a1='003' then into a3

when a1='004' then into a4

when a1='005' then into a5  select * from test;

關於insert first和insert all  insert first/all

利用insert first/all使得insert語句可以同時插入多張表,還可以根據判斷條件來決定每條記錄插入到哪張或哪幾張表中。

insert first/all語法

[ all | first ]

when condition then insert_into_clause [values_clause]

[insert_into_clause [values_clause]]...

[when condition then insert_into_clause [values_clause]

[insert_into_clause [values_clause]]...

]...

[else insert_into_clause [values_clause]

[insert_into_clause [values_clause]]...

] insert first/all 是對每一行來進行判斷

兩者區別:

insert first:對於每一行資料,只插入到第乙個when條件成立的表,不繼續檢查其他條件。

insert all :對於每一行資料,對每乙個when條件都進行檢查,如果滿足條件就執行插入操作。

做乙個小試驗驗證一下:

create table a(a number,b number);

create table b as select * from a;

create table c as select * from a;

sql> select * from a;

a b-- ---

1 01 1

1 22 0

3 0--測試insert first

執行:sql>insert first

when a=1 then

into b

when b=0 then

into c

select * from a;

--檢查insert first執行結果

sql> select * from b;

a b-- --

1 01 1

1 2sql> select * from c;

a b-- ---

2 03 0

--清理現場

sql> delete from b;

sql> delete from c;

--繼續測試insert all

執行:sql>insert all

when a=1 then

into b

when b=0 then

into c(a,b)

select * from a;

--檢查insert all執行結果

sql> select * from b;

- ---

1 01 1

1 2sql> select * from c;

a b-- ---

1 02 0

3 0多表插入語句的限制條件:

只能對錶執行多表插入語句,不能對檢視或物化檢視執行;

不能對遠端表執行多表插入語句;

不能使用表集合表示式;

不能超過999個目標列;

在rac環境中或目標表是索引組織表或目標表上建有bitmap索引時,多表插入語句不能並行執行;

多表插入語句不支援執行計畫穩定性;

多表插入語句中的子查詢不能使用序列。

pythonpip使用方法 pip使用方法整理

匯出專案已安裝的pip包 pip list 檢視專案中安裝的包 pip freeze requirements.txt 將專案中所用到的第三方庫輸出到requirements.txt中 pip install 版本號 pip install i 本次使用清華源進行安裝 離線安裝第三方庫 一鍵安裝整個...

機械秒錶的使用方法 秒錶的使用方法!

秒錶是一種常用的測時儀器。又可稱 機械停表 由暫停按鈕 發條柄頭 分針等組成。它是利用擺的等時性控制指標轉動而計時的。它是利用擺的等時性控制指標轉動而計時的。在它的正面是乙個大表盤,上方有乙個小表盤 圖1.4 2 秒針沿大表盤轉動,分針沿小表盤轉動。分針和秒針所指的時間和就是所測的時間間隔。在表正上...

使用方法 離型劑使用方法

1 使用離型劑前必須確保模具乾淨,無粉塵 蠟垢 樹脂垢 油汙等殘留物質。可以使用專用的模具潔模劑進行清洗,不可用其他液體清洗,以免清洗不乾淨或損壞模具。另外,如果您的模具是新的,在清洗乾淨後,務必要對模具進行初步處理,用離型劑在模具表面噴 刷塗5 6次,之後方可正常投入生產。2 使用離型劑時,首先要...