最近一直在学习SQL Server 2005 ,原有的项目中很多的地方用到了游标,效率很低,三个表联合查询,把结果更新到另外一个表中时,由于表的数据量较大,A表达到了1500万条、B表600万、C表300万,在他们联合查询时,更新一个表的记录时间达到了几个小时,这说明原有的设计存在很大的问题。
对原有的设计进行改进,才有表变量和临时表,表变量时,查询条件和游标条件一样,更新速度大大提升。因为表变量是存储在内存中的,在循环执行时,时间还可以接受。
采用临时表,用while循环对表进行遍历,时间也比采用游标有很大的提升,因为数据量较大,最终采用临时表来解决该问题。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16439798/viewspace-631409/ ,如需转载,请注明出处,否则将追究法律责任。