update400万条数据的效率
update a
set a.groupid = b.groupid
from dbo.ns_bssgp_liu724 a, templiu724 b
where a.ci_lac=b.ci_lac and a.ci_rac=b.ci_rac and (a.tlli=b.tlli or a.tlli=b.local_tlli or a.tlli=b.foreign_tlli)
and (b.time_stamp-a.time_stamp)>=-10000000 and a.groupid is null
这条语句运行了1个小时还没有出结果.
在上面的基础上添加了索引,并且去掉了or语句(见下面的程序),运行了36分钟,请问还可以优化效率吗?
create index liu1 on dbo.ns_bssgp_liumei2(ci_lac,ci_rac,tlli,time_stamp)
create index liu2 on templiu7241(ci_lac,ci_rac,tlli,time_stamp)
update a
set a.groupid = b.groupid
from dbo.ns_bssgp_liumei2 a, templiu7241 b
where a.groupid is null and a.ci_lac=b.ci_lac and a.ci_rac=b.ci_rac and a.tlli=b.tlli
and (b.time_stamp-a.time_stamp)>=-10000000