MERGE 是 SQL 中用来进行「合併操作」的指令,常用于在一个查询中,同时处理 INSERT、UPDATE 和 DE

MERGE 是 SQL 中用来进行「合併操作」的指令,常用于在一个查询中,同时处理 INSERTUPDATEDELETE 的情况

 

MERGE target_table AS target
USING source_table AS source
ON target.key = source.key
WHEN MATCHED THEN
   UPDATE SET target.col1 = source.col1, ...
WHEN NOT MATCHED BY TARGET THEN
   INSERT (col1, col2, ...) VALUES (source.col1, source.col2, ...)
WHEN NOT MATCHED BY SOURCE THEN
   DELETE;
 

MERGE target_table:要更新的目标资料表。

USING source_table:来源资料表,可以是表格、子查询或 CTE。

ON:定义匹配条件(主键或唯一栏位等)。

WHEN MATCHED THEN:如果找到相符的资料(符合 ON 条件),就执行 UPDATE

WHEN NOT MATCHED BY TARGET THEN:来源表有、目标表没有 → 执行 INSERT

WHEN NOT MATCHED BY SOURCE THEN:目标表有、来源表没有 → 执行 DELETE

 

自我LV~

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章