【发布时间】:2015-04-06 21:00:13
【问题描述】:
我正在尝试根据来自另一个表的信息更新一个表中的单个列,但前提是它们已经不相同。下面代码的开头部分(直到大小写为止)是我目前所拥有的,但我似乎无法在更新之前获得正确的语法来进行比较。
UPDATE table1
SET table.column1 = table2.column2
FROM table1
inner join table2 ON
table1.KEY = table2.KEY
WHERE column4 = something and DATE between '10/12/14' and '10/15/14'
CASE
WHEN table1.column1 != table2.column2
end;
我使用的是 SQL server 2008r2,但任何与 SQL 兼容的代码也都很棒。谢谢。
这是让我陷入循环的比较部分。不是连接表的直接更新。这就是为什么另一个问题不太正确的原因。
【问题讨论】:
-
WHERE ...... AND table1.column1 != table2.column2 -
where ... case没有多大意义......为什么还要有一个案例?where ... AND t1.c1 = t2.c2?
标签: sql sql-server join sql-update case