に自分自身を更新できません:は、以下のように私のサンプルを参照してくださいSQL Server 2008 R2の
create table tbl1(cl1 int, cl2 varchar(10))
create table tbl2(cl1 int, cl2 varchar(10))
insert tbl1
select 1, 'a' union all
select 1, 'b' union all
select 1, 'c' union all
select 1, 'd' union all
select 1, 'e'
insert tbl2
select 1, '' union all
select 1, '' union all
select 1, 'c' union all
select 1, '' union all
select 1, 'a'
select * from tbl1
select * from tbl2
update b
set b.cl2 = a.cl2
from tbl1 a inner join tbl2 b on a.cl1=b.cl1
where b.cl2 = '' and a.cl2 not in (select cl2 from tbl2 where tbl2.cl1 = a.cl1)
私が欲しいものの値が重複していないとTBL2テーブルにCL2列で、すべての空の値を更新することです。
上記のスクリプトとして実行しようとしましたが、正しく動作しませんでした。
解決策を見つけてください。
ありがとうございました。
最後のselectはtbl2へのデータの挿入用です。 –