1: 效率高, 连接,update 后跟别名
update a
set a.Field1= b.Field1
from Table1 a
left join Table2 b on a.SID=b.ID
where b.Code like 'm%'
效率高
2: 子查询,update后跟表名
update Table1
set Field1=
(
select Field1 from Table2
where Table2.SID=Table1.ID
)
where exists
(
select *
from Table2 b
where b.ID=Table1.ResourceID and b.Code not like 'm%'
)
效率低,因为每个子查询都要访问Table2
本文对比了两种SQL更新记录的方法:一种使用连接(join)的方式,效率较高;另一种采用子查询方式,虽然灵活但在性能上较差,因为每次都需要单独访问表。
312

被折叠的 条评论
为什么被折叠?



