当前位置: 首页 > news >正文

SQL Server查询计划操作符(7.3)——查询计划相关操作符(10)

7.3. 查询计划相关操作符

88)Sequence Project:该操作符通过对一个排序集合增加字段来进行计算。其基于一个或多个字段的值将其输入的数据行分成多个段,这样,该操作符每次输出一个段,这些字段显示为该操作符的参数。该操作符为逻辑操作符或物理操作符。

89)Snapshot:该操作符创建一个看不到其他操作所做改变的游标。

90)Sort:该操作符对所有的输入数据行进行排序。如果该操作去重,其参数列包含一个DISTINCT ORDER BY:()谓词,或其参数列包含一个带有一系列逗号分隔、用于排序的字段的ORDER BY:()谓词。如果这些字段按升序排序,其将被冠以“ASC”值,或如果这些字段按降序排序,其将被冠以“DESC”值。该操作符为逻辑操作符和物理操作符。该操作符具体如图7.3-90中节点2所示。

图 7.3-90查询计划操作符Sort示例

91)Split:该操作符用于优化更改处理。其将每个更改操作劈成一个删除和一个插入操作。该操作符为逻辑操作符和物理操作符。

92)Spool:该操作符将某个中间查询结果保存于临时数据库中。该操作符具体如图7.3-92所示。

图 7.3-92查询计划操作符Spool示例

93)Stream Aggregate:该操作符按照一个或多个字段对数据行进行分组,接着,计算该查询返回的一个或多个聚合表达式。该操作符的输出将可能被该查询中后续的操作符参考,返回客户端,或二者兼而有之。该操作符要求输入按照其分组字段进行排序。如果因为先前的Sort操作符,或因为有序索引查找或扫描等原因,而导致数据行未被排序,优化器将在该操作符前使用一个Sort操作符。语句“SHOWPLAN_ALL”的输出或SSMS产生的图形查询计划中,GROUOP BY谓词中的字段将在其参数列中被列出,而聚合表达式将在其定义值(Defined Values)列中被列出。该操作符为物理操作符。该操作符具体如图7.3-93节点2所示。

图 7.3-93查询计划操作符Stream Aggregate示例

94)Switch:该操作符为一种具有n个输入的特殊类型的串接迭代器。该操作符都有一个表达式与其相关联。根据该表达式的返回值(0至n-1之间),该操作符将相应的输入流拷贝至相应的输出流。该操作符的用处之一,就是实现涉及与类似TOP的某些操作符相关的快速向前游标的查询计划。该操作符为逻辑操作符和物理操作符。

95)Table Delete:该操作符从查询计划参数列确定的表中删除数据行。该操作符为物理操作符。该操作符具体如图7.3-95节点1所示。

图 7.3-95查询计划操作符Table Delete示例

96)Table Insert:该操作符将其输入数据行插入查询计划参数列确定的表中。其参数列也包含一个SET:()谓词,其指示每个字段被赋予的值。如果该操作符没有子节点提供插入值,那么,被插入的数据行来源于该操作符本身。该操作符为物理操作符。该操作符具体如图7.3-96节点1所示。

图 7.3-96查询计划操作符Table Insert示例

97)Table Merge:该操作符对一个堆应用一个合并数据流(Merge Data Stream)。该操作符删除、更改或插入其参数列确定表中的数据行。实际执行的操作取决于其参数列确定的ACTION列的运行时值。该操作符为物理操作符。

http://www.dtcms.com/a/60012.html

相关文章:

  • maven的配置文件settings.xml
  • 深度学习实战车道线检测
  • Linux——在 .sh 文件中实现 并行执行 的方法
  • C++ 数据结构
  • 在Linux开发板中使用.NET实现音频开发
  • VM4.4 获取自己的路径
  • 教务考试管理系统-Sprintboot vue
  • OpenAI Whisper:开启语音转文本的智能时代
  • React
  • <建模软件安装教程1>Blender4.2系列
  • Unity Dots
  • Python使用alembic实现数据库管理
  • docker 常用命令教程
  • LeetCode --- 439周赛
  • 【.NET】WinForms 和 WPF 在性能方面的对比
  • 5、STL中priority_queue的使用方法
  • Unity UGUI下实现精确点击的一种方式
  • 【GIT】non-fast-forward错误
  • python面试常见题目
  • 【RAG】基于向量检索的 RAG (BGE示例)
  • Leetcode 刷题记录 05 —— 普通数组
  • 硬件学习笔记--48 磁保持继电器相关基础知识介绍
  • 【每日学点HarmonyOS Next知识】 状态变量、公共Page、可见区域变化回调、接收参数、拖拽排序控件
  • 前端数据模拟 Mock.js 学习笔记(附带详细)
  • 中小学信息学特长生试卷(C++)
  • 6.聊天室环境安装 - Ubuntu22.04 - elasticsearch(es)的安装和使用
  • clickhouse执行进度
  • How to install nacos 2.5 with podman
  • 汇编的伪指令
  • Vue3 模板引用:打破数据驱动的次元壁(附高阶玩法)