当前位置: 首页 > 面试题库 >

有平行游标之类的东西吗?

蒙奇
2023-03-14
问题内容

我正在使用CURSOR进行逐行操作。

OPEN CURSOR_T

FETCH NEXT FROM ...

WHILE @@FETCH_STATUS = 0
BEGIN
      ... Block begins

      ... Block Inserts results into a table

      ... Block terminates
END

我想知道为什么不能并行执行此操作,因为行操作是完全隔离的,只能将一些行插入到另一个表中,并且每一行都有自己的ID分配,因此不存在发生冲突的明显可能性。

我想知道是否有一种方法可以在纯SQL中并行化它?


问题答案:

这通常是通过队列来实现的:选择“待办事项”项并将其放入队列,同时队列读取器(处理线程)将“待办事项”项出队并逐一处理。将表用作队列是一种很好的技术,处理通常与激活相关联,入队/出队周期实际上是连续的。



 类似资料:
  • 最近,我问了一个问题,其中一个答案是: 标准中没有“隐式此参数”这样的东西。该标准称之为“隐式对象参数”。 然后有人评论说: 标准中没有“隐式此参数”之类的东西。“似乎是错误的。来自expr.call#4:“如果函数是非静态成员函数,则函数的参数应使用指向调用对象的指针初始化,就像通过显式类型转换一样进行转换。” 看到上述评论,我认为答案在技术上是不正确的,因为答案说“标准中没有“隐含此参数”这样

  • 问题内容: 我正在尝试像这样计算折线的面积 后来我注意到dbgeometry无效的错误的原因我尝试了ms sql 2012中的代码也给了我错误,但是当我尝试那样的时候 多数民众赞成在SQL工作我的问题是有没有使几何在.net有效的谢谢 问题答案: 我同意Bojan,除非您使用的是实体框架? SqlGeometry对象具有MakeValid()函数,因此,使用您的示例,可以在DbGeography和

  • 问题内容: 在C#中,您可以将一个类标记为,以便只能从同一包中对其进行访问。Java有什么类似的东西吗? 问题答案: 您可以通过从类的声明中省略安全修饰符(公共,私有)来创建程序包专用类。

  • 问题内容: 如下表 我正在按如下方式汇总表格 我需要为每个组添加最长的名称()-我该如何处理? 预期产量 问题答案: 您可以使用方便地检索每个组中名称最长的乘客。 在每个GROUP BY组中选择第一行? 但是我看不到将它(或任何其他简单的方法)与您的原始查询合并在一个方法中的任何方法。我建议加入两个单独的子查询: 在join子句中方便地仅输出的一个实例,因此您可以在外部简单地使用。 如果可以为NU

  • Qt中有一些类型,例如在Qt支持的所有平台上保证为8位的quint8。 我想知道C11是否有这种类型?如果没有,有什么替代方案? 谢谢。

  • 问题内容: 我的HTML: 当用于选择green_guys的兄弟姐妹时,一个全包兄弟姐妹选择器(如我希望的那样)将选择小狗纸杯蛋糕和小猪。 其他选择器: 该选择器(又名 相邻兄弟选择器 )将仅选择蛋糕: 该选择器(又名 一般兄弟选择 )将只能选择蛋糕,和小猪: 问题答案: 没有向后或向后看的同级组合器,只有向前看的相邻和普通同级组合器。 您能做的最好的事情就是确定一种方法,将选择仅限制于具有相同父