SQL2008中Merge的用法
来源:互联网 发布:itools4.0 mac 编辑:程序博客网 时间:2024/05/22 06:51
在SQL2008中,新增了一个关键字:Merge,这个和Oracle的Merge的用法差不多,只是新增了一个delete方法而已。下面就是具体的使用说明:
首先是对merge的使用说明:
merge [into] [目标表]using <源表>on 条件when matched 操作 when not matched 操作;
首先,请参看两张表 TableThis和TableThat:
可以看到,这两张表中的内容还是比较简单的,两张表通过一个tbThisID进行主键和外键的关联,那么如如果想实现二者之间的数据同步,该如何进行呢,请看具体的Merge代码:
merge into TableThat as a using TableThis as b on a.tbThisID = b.tbThisIDwhen matched then update set a.tbContent=a.tbContent+'-'+b.tbThisPhonewhen not matched then insert (tbThisID,tbContent)values(b.tbThisID,b.tbThisPhone);
这样 就可以将两个表中间的数据进行同步并且进行更新,确实很方便,最终得到结果为:
但是如果想让匹配的数据删除掉,并且如果子表中没有数据就插入,这个该如何用呢,当然得涉及到delete的操作了:
merge into TableThat as a using TableThis as b on a.tbThisID = b.tbThisIDwhen matched then deletewhen not matched then insert (tbThisID,tbContent)values(b.tbThisID,b.tbThisPhone);
这样得到的结果为:
希望有用。
0 0
- SQL2008中Merge的用法
- SQL2008中Merge的用法
- SQL2008中merge用法
- SQL2008同Oracle的Merge用法比较
- SQL2008 Merge关键字用法与简例
- SQL2008 Merge关键字用法与简例
- SQL2008 Merge关键字用法与简例
- SQL2008 Merge关键字用法与简例
- SQL2008 Merge关键字用法与简例
- oracle中merge的用法
- Sql 中 Merge 的用法
- oracle中merge的用法
- sql中merge的用法
- MS SQL2008下的Merge新语法
- MS SQL2008下的Merge新语法
- 用SQL2008的MERGE语句同步表
- 用SQL2008的MERGE语句同步表
- SQL Server中Merge的用法
- Linux忘记root密码
- elf2flt 解释
- ifdefine __cplusplus extern c{}的作用
- C/CPP进程fork函数与exec函数
- 汇道科技:Java面向对象不是你想象的那么难
- SQL2008中Merge的用法
- Git工具
- 士气,是影响团队开发效率第一要素
- PF_RING实现分析
- mysql5.7.17 绿色版 最简洁的安装步骤(亲测可用)
- 百度地图接口,根据IP地址定位当前城市
- Linux(Centos7)yum安装最新redis
- union和struct对齐大小问题
- Python学习笔记-1、Python3的urlib.request和bs4.BeautifulSoup使用