亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Oracle 9i新增SQL命令----MERGE

系統(tǒng) 1815 0
用途

Merge 命令可以用來用一個表中的數(shù)據(jù)來修改或者插入到另一個表。插入或者修改的操作取決于ON子句的條件。

該語句可以在同一語句中執(zhí)行兩步操作,可以減少執(zhí)行多條INSERT 和UPDATE語句。

MERGE是一個確定性的語句,即不會在同一條MERGE語句中去對同一條記錄多次做修改操作。

語法

其中, merge_update_clause ::=


其中, merge_insert_clause ::=


關(guān)鍵字、參數(shù)

INTO 子句

在INTO子句中指定所要修改或者插入數(shù)據(jù)的目標(biāo)表

USING 子句

在USING子句中指定用來修改或者插入的數(shù)據(jù)源。數(shù)據(jù)源可以是表、視圖或者一個子查詢語句。

ON 子句

在ON子句中指定執(zhí)行插入或者修改的滿足條件。在目標(biāo)表中符合條件的每一行,ORACLE用數(shù)據(jù)源中的相應(yīng)數(shù)據(jù)修改這些行。對于不滿足條件的那些行,ORACLE則插入數(shù)據(jù)源中相應(yīng)數(shù)據(jù)。

WHEN MATCHED | NOT MATCHED

用該子句通知ORACLE如何對滿足或不滿足條件的結(jié)果做出相應(yīng)的操作??梢允褂靡韵碌膬深愖泳洹?

merge_update 子句

MERGE_UPDATE子句執(zhí)行對目標(biāo)表中的字段值修改。當(dāng)在符合ON子句條件的情況下執(zhí)行。如果修改子句執(zhí)行,則目標(biāo)表上的修改觸發(fā)器將被觸發(fā)。

限制:當(dāng)修改一個視圖時,不能指定一個DEFAULT值

merge_insert 子句

MERGE_INSERT子句執(zhí)行當(dāng)不符合ON子句條件時,往目標(biāo)表中插入數(shù)據(jù)。如果插入子句執(zhí)行,則目標(biāo)表上插入觸發(fā)器將被觸發(fā)。

限制:當(dāng)修改一個視圖時,不能指定一個DEFAULT值

范例
MERGE 范例

下面的例子在OE模式下創(chuàng)建一個BONUSES表,BONUS的缺省值為100。然后插入BONUSES表所有有成績的銷售人員(基于OE_ORDERS表的SQLES_REP_ID字段)。最后,人力資源管理人員決定,所有的人員將得到分紅。沒有銷售成績的員工得到工資的1%的分紅,而那些有銷售成績的員工將得到缺省分紅以及工資的1%。可以用一條MERGE語句將完成上述修改:

CREATE TABLE bonuses (employee_id NUMBER, bonus NUMBER DEFAULT 100);

INSERT INTO bonuses(employee_id)

(SELECT e.employee_id FROM employees e, orders o

WHERE e.employee_id = o.sales_rep_id

GROUP BY e.employee_id);

SELECT * FROM bonuses;

EMPLOYEE_ID BONUS

----------- ----------

153 100

154 100

155 100

156 100

158 100

159 100

160 100

161 100

163 100

MERGE INTO bonuses D

USING (SELECT employee_id, salary, department_id FROM employees

WHERE department_id = 80) S

ON (D.employee_id = S.employee_id)

WHEN MATCHED THEN UPDATE SET D.bonus = D.bonus + S.salary*.01

WHEN NOT MATCHED THEN INSERT (D.employee_id, D.bonus)

VALUES (S.employee_id, S.salary*0.01);

EMPLOYEE_ID BONUS

----------- ----------

153 180

154 175

155 170

156 200

158 190

159 180

160 175

161 170

163 195

157 95

145 14

170 96

179 62

152 90

169 100

Oracle 9i新增SQL命令----MERGE 


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日本不卡高清免费v | 亚洲欧洲综合网 | 欧美日韩中文国产一区 | 天天摸日日 | 亚洲视频手机在线观看 | 免费看欧美一级片 | 国产日韩一区二区三区在线播放 | 特黄特色大片免费播放器999 | 久久99精品久久久久久综合 | 一级女性全黄生活片免费看 | 香香在线观看视频 | 日韩欧美理论 | 伊人俺去久久涩五月综合 | 在线免费观看a视频 | 国产成人高清在线观看播放 | 98在线视频噜噜噜国产 | 日韩欧美亚洲综合久久影院d3 | 天天成人综合网 | 欧美国产在线观看 | 奇米影视狠狠狠天天777 | 日韩中文精品亚洲第三区 | 性激烈欧美三级在线播放 | 国产精品久久久久免费a∨ 国产精品久久久久免费视频 | 国产美女久久久久 | 嫩草嫩草55av | 老司机午夜精品视频你懂的 | 中国jizz18免费 | 亚洲热线99精品视频 | 男人看的网址 | 伊人精品影院一本到欧美 | 天天操天天操天天操 | 男女精品视频 | 成人性色生活片免费网 | 青青青在线视频国产 | 天天色综网 | 久热中文字幕在线精品免费 | 性欧美网站 | 欧美香蕉视频 | 成人久久18免费网站游戏 | 91精品国产综合久久婷婷 | 老子影院午夜理伦手机不卡 |