WHEN MATCHED THEN
时间: 2024-10-23 21:14:51 浏览: 15
merge用法详解
WHEN MATCHED是SQL Server中的一个DML (Data Manipulation Language) 规则,它通常用于事务性数据集成工具如Merge操作。`WHEN MATCHED`子句是在`MERGE`命令中使用的,用于指定当源表中的行与目标表中的已有行匹配时应采取的操作。
在这个上下文中,`THEN`关键字后面跟随的是针对匹配行的更新策略。例如:
```sql
MERGE TargetTable
USING SourceTable
ON TargetTable.Key = SourceTable.Key
WHEN MATCHED THEN
UPDATE SET
TargetTable.Column1 = SourceTable.Column1,
TargetTable.Column2 = SourceTable.Column2;
```
这个例子表示如果目标表中有与源表中某一行的关键字相匹配的记录,那么就更新`Column1`和`Column2`字段的值。如果不匹配,则可以添加其他条件,比如`WHEN NOT MATCHED BY TARGET THEN INSERT`来插入新的记录。
阅读全文