存档

文章标签 ‘merge’,文章数:1

2011年9月,Sybase公司将发布ASE的下一个版本V15.7。当前ASE最新版本为V15.5,版本号V15.6将被跳过,原因和从V15.0直接跳到V15.5或V12.5升到V15.0比较相似吧?有时候必须这么做。

即将推出的Sybase ASE V15.7中增加了很多的新特性。本博客将着重介绍其中一个比较实用的特性:MERGE命令。

ANSI- SQL2003标准中首次提到了MERGE这个命令,简单理解为:”向目标表中插入不存在的记录,更新已经存在的数据“。其它数据库管理系统,比如 Oracle在9i中就引入了MERGE命令,Sybase SQL Anywhere中也有该命令。迄今为止,Sybase ASE中只能使用类似的if update else insert的方法来实现MERGE的功能。

下面是一个使用MERGE的例子。表Customers中存储客户信息,每周需要将表Cust_updates_week_10中的数据更新到客户表Customers中。为了简化起见,本例子只更新address和number这2个字段。