我将使用 MERGE 插入或更新表,具体取决于它是否存在。这是我的查询,
declare @t table
(
id int,
name varchar(10)
)
insert into @t values(1,'a')
MERGE INTO @t t1
USING (SELECT id FROM @t WHERE ID = 2) t2 ON (t1.id = t2.id)
WHEN MATCHED THEN
UPDATE SET name = 'd', id = 3
WHEN NOT MATCHED THEN
INSERT (id, name)
VALUES (2, 'b');
select * from @t;
结果是,
id name
1 a
我觉得应该是
id name
1 a
2 b