本篇内容介绍了“SQL2008中的MERGE语句用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!SQL Server 2008 开始支持 MERGE语句 ,具体的使用方法如下:
— 源表
CREATE TABLE test_from (id INT, val VARCHAR(20));
— 目标表
CREATE TABLE test_to (id INT, val VARCHAR(20));
— 插入源表
INSERT INTO test_from VALUES (1, ‘A’);
INSERT INTO test_from VALUES (2, ‘B’);
— 合并 源表到目标表
MERGE test_to USING test_from
ON ( test_to.id = test_from.id ) — 条件是 id 相同
WHEN MATCHED THEN UPDATE SET test_to.val = test_from.val — 匹配的时候,更新
WHEN NOT MATCHED THEN INSERT VALUES(test_from.id, test_from.val) — 源表有,目标表没有,插入
WHEN NOT MATCHED BY SOURCE THEN DELETE; — 目标表有,源表没有,目标表该数据删除.
— 第一次检查 目标表数据.
SELECT * FROM test_to;
id val
———– ——————–
1 A
2 B
— 更新源表
UPDATE test_from SET val = ‘A2’ WHERE id = 1;
— 删除源表
DELETE FROM test_from WHERE id = 2;
— 插入源表
INSERT INTO test_from VALUES (3, ‘C’);
— 合并 源表到目标表
MERGE test_to USING test_from
ON ( test_to.id = test_from.id ) — 条件是 id 相同
WHEN MATCHED THEN UPDATE SET test_to.val = test_from.val — 匹配的时候,更新
WHEN NOT MATCHED THEN INSERT VALUES(test_from.id, test_from.val) — 源表有,目标表没有,插入
WHEN NOT MATCHED BY SOURCE THEN DELETE; — 目标表有,源表没有,目标表该数据删除.
— 再次检查 目标表数据.
SELECT * FROM test_to;
id val
———– ——————–
1 A2
3 C“SQL2008中的MERGE语句用法 香港云主机”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注开发云网站,小编将为大家输出更多高质量的实用文章!
这篇文章给大家分享的是有关忘记了路由器密码怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.在路由器网线口一侧,按住reset按钮7秒以上,注意此重置按钮可能需要牙签才能按到。按下持续时间需要7秒以上,看到所有指示灯同时闪亮一…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。