首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

一个表UPDATE另一个表,怎么提高速度

2013-09-11 
一个表UPDATE另一个表,如何提高速度table1姓名月份工资-----------------张三11000李四1800王五1700张三21

一个表UPDATE另一个表,如何提高速度
table1
姓名     月份     工资
-----------------
张三     1           1000
李四     1           800
王五     1           700
张三     2           1050
李四     2           800
王五     2           740
张三     3           1300
李四     3           800
王五     3           700
.....

table2
姓名     月份     工资
-----------------
张三     1           1200
李四     1           820
王五     1           700

update   a   set   a.工资=b.工资   from   table1   a,table  
b   where   a.姓名=b.姓名   AND   a.月份=b.月份  


现在TABLE1有十多万条记录,在查询分析器上用上面这个UPDATE语句,时间很长要20秒,有什么办法可以提高速度?另外奇怪的是在查询分析器上重复再执行一次时间只要8秒。




[解决办法]
在存储过程中调用应该相对来说好点,好象没什么其它方法
[解决办法]
楼主写的就可以,数据多速度是会慢.
[解决办法]
--改为left join (2000/以上版本对left join 进行了数据库引擎优化)
update a
set a.工资=b.工资
from table1 a left join [table] b on
a.姓名=b.姓名 AND a.月份=b.月份
[解决办法]
查询分析器是否会自动作优化处理?
会的
我的异常网推荐解决方案:软件开发者薪资,http://www.myexception.cn/other/1391128.html

热点排行