【发布时间】:2017-06-11 12:31:24
【问题描述】:
我有两张桌子;
虚拟表
Column1 | Column2 | Column3
a | b | c
好表
Column1 | Column2 | Column3
a | b | c
我是 T-SQL 新手,需要以下帮助;
使用条件将 DummyTable 中的数据合并到 GoodTable 中
- 条件:当 DummyTable 的 Column2 匹配 GoodTable 的 Column2 时
更新 GoodTable 的 Column3,用 DummyTable 的 Column 3,否则不匹配时,将 DummyTable 的行插入 GoodTable
以下是我不工作的尝试
MERGE INTO GoodTable AS Target
USING (VALUES (SELECT Column2 FROM DummyTable)) AS source (Column2)
ON Target.Column2 = Source.Column2
WHEN MATCHED BY TARGET THEN
UPDATE (Column2) VALUES (Column2)
WHEN NOT MATCHED BY TARGET THEN
INSERT INTO GoodTable VALUES DummyTable
【问题讨论】:
-
您收到的错误信息是什么?
-
@Jason 即关键字“SELECT”附近的语法不正确。但几乎整个上述查询更像是一个伪代码而不是一个真正的查询
标签: sql sql-server tsql