0

私はこのようなことをしたいと思います:

update t1 set t1.column1 = 'changed'
from left outer join t2 on t1.dataid = t2.dataid
where t2.column2 != 'foo';

基本的に、更新するレコードをt2決定する際には、何かをチェックインする必要があります。t1これを構文的に正しくするにはどうすればよいですか?

4

2 に答える 2

1

LEFT JOIN を実行するよりも、相関テーブルの値を更新されたテーブルに転送する必要がない場合は、WHERE 句で他のテーブルとの相関を確立する方が簡単です。

次のようになります。

update t1 set t1.column1 = 'changed'
where not exists (select 1 from t2 where t1.dataid = t2.dataid and t2.column2='foo');
于 2013-10-31T11:33:36.883 に答える