代码改变世界

sql语句注意事项

2015-01-12 11:38  合翅  阅读(145)  评论(0编辑  收藏  举报

1两表根据a字段关联,把t2表中的c字段值更新到t1表中的c字段
update T1
set T1.C =
(select T2.C from T2 where T1.A = T2.A)
where exists (select 1 from T2 where T1.A = T2.A);

上面的sql中条件where exists (select 1 from T2 where T1.A = T2.A)必须写上,否则会把t1表中的所有记录都会更新,且没有关联到的记录的值更新为了空值。

先把多表关联结果做为一个表看待,再和源表关联即可