光标与while循环有何不同。明智的执行,在出现故障时更快,更安全。
答案 0 :(得分:1)
WHILE循环和游标的性能类似。
看到您正在使用SQL时,可能要在循环内执行一些SQL命令。 DB引擎旨在通过一个SQL命令批量完成很多工作。循环射击成千上万个小家伙实际上并不会很小。每个人的开销都太大了。
您可能首先想到的与游标或循环有关的大多数事情都可以用SQL进行另一种处理,尽管它们可能需要您确定将要提供哪些临时表来提供帮助。
答案 1 :(得分:0)
Cursor是指向表行的指针变量,您可以在其中使用循环来循环遍历行。因此,回答您的问题的速度更快,然后我会说循环和游标是两个不同的事物,游标是变量,循环是迭代器,没有循环就不能使用游标。
此外,我建议您可以使用递归CTE通过光标执行您要执行的操作。