日期:2014-05-17  浏览次数:20467 次

有没有sql多重循环的好方法?
有5个表要依次进行循环,
尝试着写了5个游标嵌套起来处理数据,但速度非常慢
50000条数据要执行快一个小时,非常费时
有什么其它的好办法吗?
用while循环会快一点吗?

------解决方案--------------------
可以用表变量和while循环试一下
------解决方案--------------------
具体要看处理什么,是查询后更新还是什么的,
有些小的数据可以放到表变量去处理,
游标肯定会慢点,但具体得看你循环里面处理逻辑到底是什么。
建议:可以试着用with递归的方式得出要更新的结果集到临时表或表变量,
在用这个临时表或表变量去更新数据,这样应该快点。
------解决方案--------------------
用临时表联表更新呢?这样效率能提上来一些
------解决方案--------------------
尽量用SQL语句代替循环,哪怕写的复杂点