精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

DB2 Merge語句的用法

數據庫
DB2中的Merge語句可以將一個表中的數據合并到另一個表中,在合并的同時可以進行插入、刪除、更新等操作,功能非常強大。

DB2 Merge語句是經常可以用到的DB2語句,下面對DB2 Merge語句作了詳細的介紹,如果您對此方面感興趣的話,不妨一看。

DB2 Merge語句的作用非常強大,它可以將一個表中的數據合并到另一個表中,在合并的同時可以進行插入、刪除、更新等操作。我們還是先來看個簡單的例子吧,假設你定義了一個雇員表(employe),一個經理表(manager),如下所示:

---雇員表(EMPLOYE)  
CREATE TABLE EMPLOYE (  
EMPLOYEID INTEGER NOT NULL,---員工號  
NAME VARCHAR(20) NOT NULL,---姓名  
SALARY DOUBLE---薪水  
);  
INSERT INTO EMPLOYE (EMPLOYEID,NAME,SALARY) VALUES   
(1,'張三',1000),  
(2,'李四',2000),  
(3,'王五',3000),  
(4,'趙六',4000),  
(5,'高七',5000);  
--經理表(MANAGER)  
CREATE TABLE MANAGER (  
EMPLOYEID INTEGER NOT NULL,---經理號  
NAME VARCHAR(20) NOT NULL,---姓名  
SALARY DOUBLE---薪水  
);  
INSERT INTO MANAGER (MANAGERID,NAME,SALARY) VALUES   
(3,'王五',5000),  
(4,'趙六',6000);
---雇員表(EMPLOYE)
CREATE TABLE EMPLOYE (
EMPLOYEID INTEGER NOT NULL,---員工號
NAME VARCHAR(20) NOT NULL,---姓名
SALARY DOUBLE---薪水
);
INSERT INTO EMPLOYE (EMPLOYEID,NAME,SALARY) VALUES
(1,'張三',1000),
(2,'李四',2000),
(3,'王五',3000),
(4,'趙六',4000),
(5,'高七',5000);
--經理表(MANAGER)
CREATE TABLE MANAGER (
EMPLOYEID INTEGER NOT NULL,---經理號
NAME VARCHAR(20) NOT NULL,---姓名
SALARY DOUBLE---薪水
);
INSERT INTO MANAGER (MANAGERID,NAME,SALARY) VALUES
(3,'王五',5000),
(4,'趙六',6000);

經過一段時間,你發現這樣的數據模型,或者說表結構設計簡直就是一大敗筆,經理和雇員都是員工嘛,為什么要設計兩個表呢?發現錯誤后就需要改正,所以你決定,刪除經理表(MANAGER)表,將MANAGER 表中的數據合并到EMPLOYE 表中,仔細分析發現,王五在兩個表中都存在(可能是干的好升官了),而劉八在EMPLOYE 表中并不存在,現在,我們要求把EMPLOYE 表中不存在的MANAGER都插入到EMPLOYE 表中,存在的更新薪水。該怎么辦呢?這個問題并不難,通常,我們可以分兩步,如下所示:

--更新存在的  
UPDATE EMPLOYE AS EM SET SALARY=(SELECT SALARY FROM MANAGER WHERE MANAGERID=EM.EMPLOYEID)  
WHERE EMPLOYEID IN (  
SELECT MANAGERID FROM MANAGER  
);  
---插入不存在的  
INSERT INTO EMPLOYE (EMPLOYEID,NAME,SALARY)  
SELECT MANAGERID,NAME,SALARY FROM MANAGER WHERE MANAGERID NOT IN (  
SELECT EMPLOYEID FROM EMPLOYE  
);
--更新存在的
UPDATE EMPLOYE AS EM SET SALARY=(SELECT SALARY FROM MANAGER WHERE MANAGERID=EM.EMPLOYEID)
WHERE EMPLOYEID IN (
SELECT MANAGERID FROM MANAGER
);
---插入不存在的
INSERT INTO EMPLOYE (EMPLOYEID,NAME,SALARY)
SELECT MANAGERID,NAME,SALARY FROM MANAGER WHERE MANAGERID NOT IN (
SELECT EMPLOYEID FROM EMPLOYE
);

上面的處理是可以的,但是我們還可以有更簡單的方法,就是用Merge語句,如下所示:

MERGE INTO EMPLOYE AS EM  
USING MANAGER AS MA  
ON EM.EMPLOYEID=MA.MANAGERID  
WHEN MATCHED THEN UPDATE SET EM.SALARY=MA.SALARY  
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY);
MERGE INTO EMPLOYE AS EM
USING MANAGER AS MA
ON EM.EMPLOYEID=MA.MANAGERID
WHEN MATCHED THEN UPDATE SET EM.SALARY=MA.SALARY
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY);

在上面的處理中,我們用經理表(MANAGER)的薪水更新了雇員表(EMPLOYE)的薪水,假設現在要求,如果經理表(MANAGER)的薪水>雇員表(EMPLOYE)的薪水的時候更新,否則不更新,怎么辦呢?如下:

MERGE INTO EMPLOYE AS EM  
USING MANAGER AS MA  
ON EM.EMPLOYEID=MA.MANAGERID  
WHEN MATCHED AND EM.SALARY<MA.SALARY THEN UPDATE SET EM.SALARY=MA.SALARY  
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY);
MERGE INTO EMPLOYE AS EM
USING MANAGER AS MA
ON EM.EMPLOYEID=MA.MANAGERID
WHEN MATCHED AND EM.SALARY<MA.SALARY THEN UPDATE SET EM.SALARY=MA.SALARY
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY);

不仔細的朋友可能沒有看出上面兩條語句的區別,哈哈,請仔細對比一下這兩條語句。上面的語句中多了ELSE IGNORE語句,它的意思正如它英文的意思,其它情況忽略不處理。如果你認為理論上應該不存在EM.SALARY>MA.SALARY的數據,如果有,說明有問題,你想拋個異常,怎么辦?如下:

MERGE INTO EMPLOYE AS EM  
USING MANAGER AS MA  
ON EM.EMPLOYEID=MA.MANAGERID  
WHEN MATCHED AND EM.SALARY<MA.SALARY THEN UPDATE SET EM.SALARY=MA.SALARY  
WHEN MATCHED AND EM.SALARY>MA.SALARY THEN SIGNAL SQLSTATE '70001' SET MESSAGE_TEXT = 'EM.SALARY>MA.SALARY'
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY)  
ELSE IGNORE;
MERGE INTO EMPLOYE AS EM
USING MANAGER AS MA
ON EM.EMPLOYEID=MA.MANAGERID
WHEN MATCHED AND EM.SALARY<MA.SALARY THEN UPDATE SET EM.SALARY=MA.SALARY
WHEN MATCHED AND EM.SALARY>MA.SALARY THEN SIGNAL SQLSTATE '70001' SET MESSAGE_TEXT = 'EM.SALARY>MA.SALARY'
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY)
ELSE IGNORE;

對于EM.SALARY>MA.SALARY的情況,如果你不想拋異常,而是刪除EMPLOYE中的數據,怎么辦?如下:

MERGE INTO EMPLOYE AS EM  
USING MANAGER AS MA  
ON EM.EMPLOYEID=MA.MANAGERID  
WHEN MATCHED AND EM.SALARY<MA.SALARY THEN UPDATE SET EM.SALARY=MA.SALARY  
WHEN MATCHED AND EM.SALARY>MA.SALARY THEN DELETE  
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY)  
ELSE IGNORE;
MERGE INTO EMPLOYE AS EM
USING MANAGER AS MA
ON EM.EMPLOYEID=MA.MANAGERID
WHEN MATCHED AND EM.SALARY<MA.SALARY THEN UPDATE SET EM.SALARY=MA.SALARY
WHEN MATCHED AND EM.SALARY>MA.SALARY THEN DELETE
WHEN NOT MATCHED THEN INSERT VALUES (MA.MANAGERID,MA.NAME,MA.SALARY)
ELSE IGNORE;

以上簡單介紹了Merge語句的使用,它的應用不只是上面介紹的情況,其實它可以應用在很多其他語句不好處理情況,這需要你去發現,記住熟能生巧

 

 

 

【編輯推薦】

DB2游標原理介紹

db2日志保存的兩種方式

幾種常用的DB2循環用法

四種常用的DB2循環語句

DB2創建數據庫的實現

責任編輯:段燃 來源: 互聯網
相關推薦

2010-11-04 11:39:47

2010-08-18 08:53:23

DB2 SELECT語

2010-11-04 15:39:40

DB2 SQL語句

2010-09-06 15:13:05

DB2

2010-11-01 11:13:57

DB2表管理

2010-09-30 16:46:11

DB2操作語句

2010-11-04 09:50:56

DB2循環

2010-09-07 10:47:42

DB2數據庫

2010-11-02 15:36:18

DB2建表語句

2009-09-02 09:12:17

SELECT語句DB2

2010-11-04 09:31:21

DB2循環語句

2010-11-03 11:55:23

DB2公共表表達式

2010-11-04 12:00:59

db2存儲過程

2010-07-27 16:54:40

DB2數據庫

2010-09-30 10:53:39

DB2表管理

2010-08-04 17:01:17

DB2數據庫

2010-08-10 10:23:16

IBM DB2 V9.

2011-08-17 20:48:25

索引建立語句非聚集索引唯一索引

2010-11-04 11:32:37

DB2 CREATE

2010-08-26 11:37:38

DB2命令
點贊
收藏

51CTO技術棧公眾號

亚洲国产精品一区| 超碰97久久国产精品牛牛| 国产精品伦一区| 999视频在线观看| 五月天综合激情网| 91精品秘密在线观看| 亚洲国产一区二区三区在线观看| 免费一级特黄录像| 91高清视频在线观看| 国产欧美日本一区二区三区| 成人综合色站| 波多野结衣视频在线观看| 伊人精品成人久久综合软件| 中文字幕日韩专区| 手机在线看片日韩| 天堂va欧美ⅴa亚洲va一国产| 色女孩综合影院| 欧美狂野激情性xxxx在线观| 中国日本在线视频中文字幕| 97久久超碰国产精品电影| 91精品视频在线播放| 成人a v视频| 亚洲国产高清视频| 欧美成人精品一区二区| 亚洲一二三四视频| 天天躁日日躁狠狠躁欧美| 欧美日韩免费不卡视频一区二区三区| 国内外成人激情视频| 久久电影网站| 亚洲综合在线视频| 国产av不卡一区二区| 岛国视频免费在线观看| 26uuu成人网一区二区三区| 国产高清一区视频| 亚洲成人第一区| 国产精品一区免费在线观看| 国产欧美日韩中文字幕| 波多野结衣电车| 亚洲综合99| 海角国产乱辈乱精品视频| 91porn在线视频| 婷婷亚洲五月| 久久精品电影网| 任我爽在线视频| 久久视频国产| 日韩视频中文字幕| 999福利视频| 97精品一区| 色青青草原桃花久久综合| 国产精品理论在线| 日韩欧美高清在线播放| 色久欧美在线视频观看| 天堂av免费在线| 婷婷综合五月| 久久伊人色综合| 亚洲av鲁丝一区二区三区 | 成人免费视频网站在线观看| 7777精品伊久久久大香线蕉语言| 国产高中女学生第一次| 国产jizzjizz一区二区| 国产乱码精品一区二区三区卡 | 欧美成a人免费观看久久| 亚洲国产高清高潮精品美女| 一区二区三区少妇| 国产欧美日韩精品一区二区三区| 亚洲日本成人网| 欧美激情 一区| 久久久国产精品| 欧美激情第1页| 国产精品国产三级国产专区52| 亚洲美女少妇无套啪啪呻吟| 全球成人中文在线| 一区二区视频免费观看| 国产精品一区二区在线播放| 国产伦精品一区二区| 蜜桃视频在线免费| 日韩理论片在线| 青青在线免费观看| gogo亚洲高清大胆美女人体 | 蜜桃视频污在线观看| 97久久精品人人澡人人爽| 神马影院午夜我不卡| 国产婷婷视频在线| 粉嫩老牛aⅴ一区二区三区| 99热手机在线| 中文一区二区三区四区| 亚洲日本中文字幕免费在线不卡| 国产精品suv一区二区88| 欧美在线高清| 国产91在线播放精品91| 国产男女猛烈无遮挡| 99re成人在线| 欧美少妇一区二区三区| 欧美成人免费电影| 91精品国产综合久久久久久漫画| 欧美大喷水吹潮合集在线观看| 欧洲三级视频| 韩国三级电影久久久久久| 中文字幕视频二区| 97精品视频在线观看自产线路二| 一区二区三区我不卡| 免费成人在线电影| 欧美一级午夜免费电影| xxxx日本黄色| a91a精品视频在线观看| 91亚洲精品在线观看| 日韩av高清在线| 一区二区三区日韩在线观看| 亚洲欧美激情网| 成人av激情人伦小说| www.xxxx欧美| 午夜精品一区二| 99精品视频在线免费观看| 97精品国产97久久久久久粉红| 成人福利av| 欧美精品一区二| 无码黑人精品一区二区| 美女精品自拍一二三四| 欧美精品欧美精品系列c| 草美女在线观看| 日韩一区二区不卡| 日韩国产第一页| 蜜桃av一区二区三区电影| 久久精品女人的天堂av| 7777kkk亚洲综合欧美网站| 91精品国产综合久久久久久久| 亚洲图片另类小说| 久久看片网站| 精品综合久久久| av第一福利在线导航| 欧美一级片在线| 四虎影院中文字幕| 精品一区二区三区视频在线观看| 天堂精品视频| 成人日韩精品| 亚洲色在线视频| 国产精品久免费的黄网站| 99国产精品久久| 欧美一级在线看| 神马久久影院| 日本乱人伦a精品| 欧美zozo| 在线观看视频一区| 精品人妻中文无码av在线| 老妇喷水一区二区三区| 欧美在线3区| 成人18视频在线观看| 在线看日韩欧美| 伊人网站在线观看| 中文字幕在线一区| 中文字幕剧情在线观看| 欧美激情aⅴ一区二区三区| 91视频最新| av电影免费在线看| 亚洲欧美日韩精品| 成人黄色三级视频| 国产精品伦理一区二区| 日韩高清在线一区二区| 欧美日韩国产精品一区二区亚洲| 风间由美久久久| 久草在线视频网站| 国产午夜精品久久久| 久久精品偷拍视频| 亚洲日本在线天堂| 国产a级片视频| 香蕉久久夜色精品| 日韩欧美99| 国产高清日韩| 亚洲97在线观看| 国模吧精品人体gogo| 欧美日韩久久一区二区| 欧美日韩一级大片| 91亚洲精品一区二区乱码| 深夜黄色小视频| 欧美成人一区二免费视频软件| 国产视频一区二区不卡| 免费欧美电影| 欧美激情精品久久久久久黑人| 污视频网站在线播放| 欧美网站大全在线观看| a级片在线观看免费| 91蝌蚪porny| 奇米影视四色在线| 亚洲成人中文| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 亚洲国产高清在线观看| 热久久99这里有精品| 免费av毛片在线看| 亚洲精品久久久一区二区三区 | 欧美一二三区在线| aaa在线视频| 一区二区三区日韩在线观看| 日韩人妻无码精品综合区| 国产成人精品一区二| 成年人视频在线免费| 欧美日本不卡高清| 亚洲 国产 欧美一区| 精品福利网址导航| 国产区精品视频| 色吧亚洲日本| 欧美福利视频网站| 日本视频在线免费观看| 亚洲免费一在线| 高h调教冰块play男男双性文| 欧美性大战久久| 国产精品午夜影院| 一区二区三区四区在线免费观看| 久操视频免费看| 成人网在线播放| 天天操狠狠操夜夜操| 久久久亚洲一区| 免费 成 人 黄 色| 国产精品a久久久久| 亚洲一区尤物| 欧美精品羞羞答答| 久久99九九| 一区二区三区免费在线看| 国产欧美中文字幕| 日本肉肉一区 | 粉嫩av国产一区二区三区| 日本成人激情视频| 热三久草你在线| 欧美精品videofree1080p| 久做在线视频免费观看| 在线视频欧美日韩精品| 高h视频在线| 国产亚洲视频在线| 免费一级在线观看| 亚洲摸下面视频| 欧洲毛片在线| 日韩久久免费电影| 天天综合永久入口| 日韩精品极品在线观看| 国产亚洲欧美在线视频| 国产一区二区三区影视| 日本国产精品视频| 国产超碰精品| 国产精品对白刺激| 免费观看成人性生生活片| 国产成人久久久| 国产一区二区三区朝在线观看| 国产成人av网| 中文.日本.精品| 国产精品三级在线| 青青草国产一区二区三区| 国产精品吴梦梦| 91精品视频一区二区| 91精品免费| 风间由美中文字幕在线看视频国产欧美 | 美女色狠狠久久| 国产精品日韩欧美综合| 亚洲欧洲专区| 亚洲一区二区三区视频播放| 中文无码日韩欧| 精品一区二区不卡| 亚洲春色h网| 亚洲高清123| 天天做天天爱天天综合网2021| 欧美日韩一区二区三区电影| 午夜久久黄色| 日本欧美黄色片| 日韩精品电影在线| 日本一二区免费| 波多野结衣中文字幕久久| 一本到不卡免费一区二区| 日韩人妻精品中文字幕| 欧美日韩一区成人| 国产不卡av在线播放| 亚洲精品suv精品一区二区| 九九在线视频| 久久精品亚洲热| 国产精品一二三产区| 国产精品1234| 日韩三级av高清片| 欧美一区二区高清在线观看| 欧美freesextv| 缅甸午夜性猛交xxxx| 日韩二区在线观看| 日本少妇一区二区三区| 2024国产精品| 加勒比婷婷色综合久久| 五月天久久比比资源色| 在线观看国产黄| 亚洲第一精品福利| 色的视频在线免费看| 久久久亚洲国产天美传媒修理工| 少妇精品视频一区二区免费看| 91视频8mav| 精品在线播放| 真人做人试看60分钟免费| 久久青草久久| 中文字幕亚洲日本| 亚洲国产精品黑人久久久| 久久精品视频8| 欧美老肥妇做.爰bbww| 日本成人一区| 色综合久久中文字幕综合网小说| 日韩精品一区二区三区| 国产v亚洲v天堂无码| 欧美电影《轻佻寡妇》| 免费高清在线观看免费| 国产精品一区二区免费不卡| 日本少妇xxxxx| 精品日本高清在线播放 | 精品99999| 老司机午夜在线视频| 国产成人精品亚洲精品| 欧美亚洲国产日韩| 国产精品视频网站在线观看| 美女视频免费一区| 男人舔女人下部高潮全视频 | 免费不卡在线观看av| 欧美性片在线观看| 久久精品日产第一区二区三区| 自拍偷拍欧美专区| 亚洲小视频网站| 国产精品毛片久久久久久久| 亚洲天堂一区在线| 精品福利一区二区三区| yellow91字幕网在线| 成人日韩av在线| 日韩中文欧美| 一区二区三区国产免费| 久久亚洲综合色| 91在线看视频| 亚洲精品一区二区精华| 男女视频在线| av日韩免费电影| 欧美 日韩 国产 一区| 三级av免费看| 亚洲欧美日韩国产综合在线 | 久久精品国产精品亚洲毛片| 日本婷婷久久久久久久久一区二区| 国产亚洲精品v| 亚洲av成人精品一区二区三区| 亚洲一区在线观看视频| 性做久久久久久久| 久久久久免费视频| jizz性欧美2| 日本韩国欧美在线观看| 91在线看国产| 欧美激情黑白配| 亚洲欧美日本精品| 456成人影院在线观看| 日韩欧美99| 精品中文av资源站在线观看| 国产探花在线视频| 欧美一区二区黄| 国模雨婷捆绑高清在线| 国产亚洲欧美另类一区二区三区| 亚洲日本视频| 国产毛片久久久久久久| 欧美系列一区二区| 国产精品实拍| 成人三级在线| 亚洲欧美高清| 丁香六月激情综合| 日韩午夜激情电影| 欧美性受ⅹ╳╳╳黑人a性爽| 精品久久中出| 青椒成人免费视频| 亚洲综合视频网站| 亚洲白拍色综合图区| 成人影院网站| 亚洲欧洲免费无码| 国产91精品欧美| 五月激情六月丁香| 中文字幕亚洲综合久久| 日本精品一区二区三区在线观看视频| 国产一区二区三区乱码| 久久毛片高清国产| 国产强被迫伦姧在线观看无码| 久久免费视频网| 精品国产一区探花在线观看| 日韩a一级欧美一级| 天天色天天爱天天射综合| 国产福利在线| caoporen国产精品| 爽好多水快深点欧美视频| 东方av正在进入| 亚洲精品中文字幕女同| www 久久久| 能在线观看的av| 亚洲资源中文字幕| 黄网在线免费| 成人黄视频免费| 日韩**一区毛片| 国产精品成人av久久| 日韩在线视频导航| 欧美91在线| 黄色三级视频在线播放| 色婷婷一区二区三区四区| 中文字幕中文字幕在线中高清免费版 | 青青草成人在线| 国产精品theporn| 亚洲综合第一区| 国产午夜精品久久久 | 国产美女在线精品| 中文字幕视频网| 欧美国产欧美亚洲国产日韩mv天天看完整|