7.4.10 更新表的 MERGE 语句
MERGE 语句允许您对源表与目标表的一个外部连接的结果应用布尔条件。如果 MERGE
语句包括 Update 子句,则对目标在 UPDATE 操作中使用那些满足您在 ON 关键字之后
指定的连接条件的行。MERGE 语句的 SET 子句支持与 UPDATE 语句的 SET 子句相同
的语法,并指定要更新的目标表的哪些列。
下例示例展示您可如何使用 MERGE 语句的 Update 子句来更新目标表:
MERGE INTO t_target AS t USING t_source AS s ON t.col_a = s.col_a
WHEN MATCHED THEN UPDATE
SET t.col_b = t.col_b + s.col_b ;
在前一示例中,目标表的名称为 t_target,源表的名称为 t_source。对于在源表与目标表中
其 col_a 都有相同的值的连接结果的行,MERGE 语句通过将源表中 col_b 列的值添加
到 t_target 表中 col_b 列的当前值来更新 t_target 表。
MERGE 语句的 UPDATE 操作不修改源表,且不可更新目标表中的任何行超过一次。
单个 MERGE 语句可同时组合 UPDATE 与 INSERT 操作,或可同时组合 DELETE 与
INSERT 操作而不需要删除子句。要了解不包括 Update 子句的 MERGE 的不同的示例,
请参阅主题 MERGE 的 Delete 子句
GBase 8s V8.8 SQL 指南:教程-7.2.10
最新推荐文章于 2023-12-27 19:31:26 发布