Sql server 游标与 While 循环的性能

Posted

技术标签:

【中文标题】Sql server 游标与 While 循环的性能【英文标题】:Sql server Cursor vs While Loop performance 【发布时间】:2020-08-26 14:39:29 【问题描述】:

我使用过 Sql server 游标。 我在数据库中插入了 10K 条记录,并在相关的一些数据中插入了多个表,但需要一些时间 所以任何关于如何提高 sql server 速度的建议。 sql server 中的哪个循环库?

【问题讨论】:

【参考方案1】:

是的。 20 年来的旧规则:不要使用光标。它们的性能非常糟糕,并且您失去了 SQL Server 为查询性能所做的 90% 的工作。开始使用您的代码并编写基于 SET 的 SQL,而不是过程循环。

【讨论】:

【参考方案2】:

虽然循环总是比提供更多控制的游标更好,但您可以使用通用表表达式的组合

https://www.techrepublic.com/blog/the-enterprise-cloud/comparing-cursor-vs-while-loop-performance-in-sql-server-2008/

【讨论】:

以上是关于Sql server 游标与 While 循环的性能的主要内容,如果未能解决你的问题,请参考以下文章

SQL SERVER循环遍历(普通循环和游标循环)

sqlserver中怎样使用游标for循环

sqlserver中怎样使用游标for循环

如何删除 MS SQL Server 存储过程中的 While 循环? [关闭]

一个Sql Server 的游标与循环嵌套的存储过程用例

sqlserver怎么循环