执行计划操作符(DM8.1 20231113)

达梦数据库执行计划操作符

  • 环境介绍

环境介绍

  • 数据库版本 DM8.1 20231113
  • 达梦数据库学习使用列表 - 点击跳转
操作符名称参数说明操作说明
AAGR2grp_num:分组项个数 / sfun_num:返回上层操作符的集函数个数/distinct_flag:集函数参数是否去重 / slave_empty:是否限制 MPP 从节点向主节点传送数据,或本地并行的从线程向主线程传送数据。取值:0:不限制;1:不允许 MPP 从节点向主节点传送数据;2:不允许本地并行的从线程向主线程传送数据简单聚集。如果没有分组,则直接计算聚集函数
ACTRL无参数控制备用计划转换
AFUNafun_num:分析函数个数 / partition_num:分区项个数 / [colnamelist]:分区项/order_num:排序项个数 / [colnamelist]:排序项分析函数计算
ASCNtabname:表的别名used_in_sss3:是否出现在 sss3(subquery set search,子查询集合查找)指令中。值为 TRUE 时,则每次扫描都重新开始数组当作表来扫描
ASSERTassert_condition:触发断言的布尔表达式条件约束检查
BLKUP2idxname(tabname) :索引名(表名)定位查找
BMAND无参数位图索引的与运算
BMCNTis_match_out:是否直接根据孩子节点的 MATCH-COUNT 值计算COUNT(*)位图索引的行数计算
BMCVT无参数位图索引的 ROWID转换
BMMG无参数位图索引归并
BMOR无参数位图索引的或运算
BMSEKscan_type:扫描类型 / idxname(tabname) :索引名(表名) / scan_range:扫描范围位图索引的范围查找
CONST VALUE LISTrow_num:常量列表行数 / col_num:常量列表列数常量列表
CONSTCN_PRE_VAR:复合索引跳跃扫描中跳跃扫描的索引前导列个数 / (out_var):外部 var 变量序列用于复合索引跳跃扫描
CSCN2idxname(tabname) :索引名(表名)/ NEED_SLCT(TRUE):是否进行过滤条件下推的优化聚集索引扫描
CSEK2scan_type:扫描类型 / idxname(tabname) :索引名(表名) / scan_range:扫描范围聚集索引数据定位
CTE_SCNexp_num:映射列数 / (queryname):查询名递归 WITH 查询
CTNSidxname(tabname) :索引名(表名) / KEY:全文索引的关键词用于实现全文索引的CONTAINS
DELETE(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink连接名”作为后缀 / ype:删除类型,取值:SELECT、CURSOR / mpp_opt:是否通过发送整个计划实现对 MPP 处理的优化 / hp_opt:是否进行分区列等值过滤优化删除数据
DELETE_REMOTE(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink连接名”作为后缀 / type:删除类型,取值:SELECT、CURSOR / mpp_opt:是否通过发送整个计划实现对 MPP 处理的优化 / hp_opt:是否进行分区列等值过滤优化DBLINK 删除操作
DISTINCTkeys:MPP 模式下需要分发的列的信息(仅在 MPP 模式下生效)去重
DSCNidxname(tabname) :索引名(表名)动态视图表扫描
DSSEKscan_type:扫描类型 / idxname(tabname) :索引名(表名) / scan_range:扫描范围DISTINCT 列上索引跳跃扫描(单列索引或复合索引)
ESCN无参数外部表扫描
EXCEPT无参数集合的差运算,且取差集后删除重复项
EXCEPT ALL无参数集合的差运算,且取差集后不删除重复项
EHFDmpp_opt:数据操作方式,1:数据直接发送给 BP 端进行删除;0:通过 SP 端分发DPC 下事务型 HUGE表的数据删除
EHFI(tabname):表名 / mpp_opt:数据操作方式,1:数据直接发送给 BP 端进行插入;0:通过 SP 端分发DPC 下事务型 HUGE表的数据插入
EHFINS(tabname):表名 / mpp_opt:数据操作方式,1:数据直接发送给 BP 端进行插入;0:通过 SP 端分发DPC 下非事务型HUGE 表的数据插入
EHFUmpp_opt:数据操作方式,1:数据直接发送给 BP 端进行更新;0:通过 SP 端分发DPC 下事务型 HUGE表的数据更新
ERECVstask_no:自身所处的子任务的序号,-1 表示 root 子任务 / l_stask_no:孩子子计划的序号 / n_keys:归并排序的 key 的个数 / in_turn:是否按照顺序接收各个发送端的数据 / trig:是否在 IDU(增删改操作)上存在触发器DPC 下用于接收数据,和 ESEND 对应
ESENDstask_no:自身所处的子任务的序号,-1 表示 root 子任务 / type:发送类型,用于确定基于何种数据特征对数据进行分发。详细介绍请参考《DM8 分布计算集群》5.4 小节“数据交换与数据迭代操作符” / sites:站点的 RAFT ID 和并行度值,“-”表示空。例如(1:3,2:4)表示 RAFT ID 1 的并行度为 3,RAFT ID 2 的并行度为 4 / sql_invoke:当前子任务是否包含了含 sql 的函数调用 / pwj_opt:是否使用了分区智能连接(Partition Wise Join)优化 / table:表名,“-”表示空,不为空时表示按照该表的分区定义进行数据分发 / empty_type:当哈希连接相关优化的分发计算无合适接收端时的处理策略,取值:INIT:未指定策略,效果等同于 ERROR;PRUNE:直接抛弃;ANY:给任意线程处理;ERROR:报错;NOT_EMPTY:通知所有线程右孩子不为空集 / keys:表的分发列(仅当 table 不为空时显示) / INFO_BITS:相关优化信息的标志位,6 个标志位自低向高含义如下:bit0:是否在哈希连接左表为广播数据时共享哈希表;bit1:是否使用 UNIONALL优化;bit2:是否选择开始执行任务;bit3:是否进行链路发送优化;bit4:是否进行归并排序的链路发送优化;bit5:用于指示当前 ESEND 发送的目标进行归并排序DPC 下用于发送数据,和 ERECV 对应
FAGR2sfun_num:返回上层操作符的集函数个数 / idxname:索引名快速聚集,如果没有where 条件,且取count(*), 或者基于索引的 MAX/MIN值,则可以快速取得集函数的值
FILLBTRindex_id:用于填充 B 树的索引 ID填充 B 树
FTTSfor_mdis:是否从 MPP DISTRIBUTE 获得数据MPP\LPQ 下,对临时表的优化
GIpolicy:指示表的数据访问粒度,各个取值和含义请参考《DM8 分布计算集群》中 5.4 小节“数据交换与数据迭代操作符” / gi_unit:当前 GI 迭代器控制的数据扫描操作符起止序号 / scan_type[0]:扫描相关信息,格式为:[扫描类型,反向扫描信息(可选),末尾 KEY 优化信息(可选)] / dynamic_pll:是否包含动态裁剪Granule Iterator,在DMDPC 集群中,控制各工作线程的数据访问粒度和分区表裁剪
GSEKidxname(tabname) :索引名(表名)空间索引查询
HAGR2grp_num:分组项个数 / sfun_num:返回上层操作符的集函数个数 / distinct_flag:集函数参数是否去重 / top_num:是否只返回前 N 组 / slave_empty:是否限制 MPP 从节点向主节点传送数据,或本地并行的从线程向主线程传送数据。取值:0:不限制;1:不允许 MPP 从节点向主节点传送数据;2:不允许本地并行的从线程向主线程传送数据 / keys:分组项HASH 分组,并计算聚集函数
HASH FULL JOIN2key_num:等值连接条件数 / mix_aggr:是否将分组操作下放到此步骤进行,仅支持 COUNT 和 SUM函数 / mix_dist:是否存在对分组操作和哈希左外连接的优化(即把分组操作下放到哈希左外连接中) / join_condition:连接条件 / KEY:等值连接条件HASH 全外连接
HASH LEFT JOIN2key_num:等值连接条件数 / partition_keys_num:paritition outer join 的 KEY 个数 / ret_null:是否仅返回未匹配的行 / mix:需要计算的单个右表列的 COUNT 函数个数 / join_condition:连接条件 / KEY:等值连接条件HASH 左外连接
HASH LEFT SEMI JOIN12(ANTI):是否为反连接 / join_condition:连接条件HASH 左半连接
HASH LEFT SEMI JOIN2(ANTI):是否为反连接 / key_num:等值连接条件数 / join_condition:连接条件 / KEY:等值连接条件 / KEY_NULL_EQU:连接列的 NULL 值比较策略。取值:0:NULL 与 NULL不相等;1:NULL 与 NULL 相等。例如:(0,1,0)表示第 1 个和第 3 个连接条件中 NULL 值视为不等,第 2 个连接条件中 NULL 值视为相等HASH 左半连接
HASH LEFT SEMI MULTIPLE JOIN(ANTI):是否为反连接 / join_condition:连接条件多列 NOT IN
HASH RIGHT JOIN2key_num:等值连接条件数 / ret_null:是否仅返回未匹配的行 / join_condition:连接条件 / KEY:等值连接条件HASH 右外连接
HASH RIGHT SEMI JOIN2key_num:等值连接条件数 / (ANTI):是否为反连接 / join_condition:连接条件 / KEY:等值连接条件 / KEY_NULL_EQU:连接列的 NULL 值比较策略。取值:0:NULL 与 NULL不相等;1:NULL 与 NULL 相等。例如:(0,1,0)表示第 1 个和第 3 个连接条件中 NULL 值视为不等,第 2 个连接条件中 NULL 值视为相等 / INFO_BITS:相关优化信息的标志位,其中 bit0 指明是否在左表为广播数据时共享 0 号工作节点哈希表HASH 右半连接
HASH RIGHT SEMI JOIN32(any_options):取值包括:“= all”、“<> any”、“op all”、“op any” / key_num:等值连接条件数 / join_condition:连接条件 / KEY:等值连接条件 / KEY_NULL_EQU:连接列的 NULL 值比较策略。取值:0:NULL 与 NULL不相等;1:NULL 与 NULL 相等。例如:(0,1,0)表示第 1 个和第 3 个连接条件中 NULL 值视为不等,第 2 个连接条件中 NULL 值视为相等用 于 OP SOME/ANY/ALL 的HASH 右半连接
HASH2 INNER JOIN(UNIQUE_FLAG) :该连接中左右表数据的唯一性策略。取值:LRKEY_UNIQUE:左右表数据分别根据各自 KEY 值唯一;LKEY_UNIQUE:左表数据根据 KEY 值唯一,右表则不唯一;RKEY_UNIQUE:右表数据根据KEY 值唯一,左表则不唯一 / key_num:等值连接条件数 / join_condition:连接条件 / KEY:等值连接条件 / KEY_NULL_EQU:连接列的 NULL 值比较策略。取值:0:NULL 与 NULL不相等;1:NULL 与 NULL 相等。例如:(0,1,0)表示第 1 个和第 3 个连接条件中 NULL 值视为不等,第 2 个连接条件中 NULL 值视为相等 / INFO_BITS:相关优化信息的标志位,6 个标志位自低向高含义如下:bit0:是否在哈希连接左表为广播数据时共享 0 号工作节点的哈希表;bit1:是否使用 UNIONALL 优化;bit2:是否选择开始执行任务;bit3:是否进行链路发送优化;bit4:是否进行链路发送优化,且需要进行归并;bit5:用于指示当前 ESEND 发送的目标进行归并排序HASH 内连接
HEAP TABLEstask_no:子任务的序号,-1 表示 root 子任务 / sql_invoke:是否已在所属子计划进行含 sql 的函数调用 / table_no:临时结果表编号 / full:并行场景数据完整性,取值:0:局部数据;1:完整数据 / mpp_full:是否在 MPP/DPC 模式下表示完整数据 / autoid:是否生成 autoid 列 / sites:站点的 ID 和并行度序列,“-”表示空。例如:(1:3,2:4)表示 1 号站点并行度 3,2 号站点并行度 4临时结果表
HEAP TABLE SCANtable_no:临时结果表编号临时结果表扫描
HFDmpp_opt:是否通过发送整个计划实现对 MPP 处理的优化删除事务型 HUGE 表数据
HFDELmpp_opt:是否通过发送整个计划实现对 MPP 处理的优化删除非事务型 HUGE表数据
HFI(tabname):表名 / mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发事务型 HUGE 表插入记录
HFI2(tabname):表名 / mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发MPP 模式下优化的事务型 HUGE 表插入记录
HFINS2mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发非事务型 HUGE 表插入记录
HFINS3无参数MPP 模式下优化的非事务型 HUGE 表插入记录
HFINS4无参数非 MPP 模式下,针对非事务型 HUGE 水平分 区 主 表 的 插 入 优化 , 需 要 参 数HFINS_PARALLEL_FLAG=2
HFLKUP(tabname):表名根据 ROWID 检索非事务型 HUGE 表数据
HFLKUP2(tabname):表名根据 ROWID 检索事务型 HUGE 表数据
HFS UPDATEtable:表名 / type:类型,取值:SELECT、CURSOR / mpp_opt:是否通过发送整个计划实现对 MPP 处理的优化更新非事务型 HUGE表数据
HFSCN(tabname):表名非事务型 HUGE 表的逐行扫描
HFSCN2(tabname):表名 / NEED_SLCT(TRUE):是否进行过滤条件下推的优化事务型 HUGE 表的逐行扫描
HFSEK(tabname):表名 / scan_type:扫描类型 / scan_range:扫描范围根据 KEY 检索非事务型 HUGE 表数据
HFSEK2(tabname):表名 / scan_type:扫描类型 / scan_range:扫描范围根据 KEY 检索事务型HUGE 表数据
HFUtable:表名 / type:类型,取值:SELECT、CURSOR / mpp_opt:是否通过发送整个计划实现对 MPP 处理的优化更新事务型 HUGE 表数据
HIERAR CHICAL QUERY(UNIQUE):结果集是否去重 / key_num:等值连接条件数 / connect_by_condition:连接条件层次查询
HPMorder_keys:排序项 / is_distinct:是否对排序结果进行去重操作 / top_flag:是否有 TOP 子句需要处理 / pll_scan_type:并行处理时扫描相关信息,格式为:[扫描类型,反向扫描信息(可选),末尾 KEY 优化信息(可选)] / pll_keys:并行处理时分区列计算表达式相关信息,格式为:(分区列的计算表达式中相等的个数,分区列的计算表达式中最后一列起始的个数,分区列的计算表达式中最后一列终止的个数)水平分区表归并排序
INDEX JOIN LEFT JOIN2join_condition:连接条件 / ret_null:是否仅返回未匹配的行索引左连接
INDEX JOIN SEMI JOIN2(ANTI):是否为反连接 / join_condition:连接条件索引半连接
INSERT(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink连接名”作为后缀 / type:插入类型,取值:UNKNOWN、VALUES、SELECT、MVALUE / hp_opt:是否进行分区列等值过滤优化 / mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发插入记录
INSERT_LIST(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink连接名”作为后缀 / type:插入类型,取值:UNKNOWN、VALUES、SELECT、MVALUE / hp_opt:是否进行分区列等值过滤优化 / mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发堆表插入
INSERT_REMOTE(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink连接名”作为后缀 / type:插入类型,取值:UNKNOWN、VALUES、SELECT、MVALUE / hp_opt:是否进行分区列等值过滤优化 / mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发DBLINK 插入操作
INSERT3(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink连接名”作为后缀 / type:插入类型,取值:UNKNOWN、VALUES、SELECT、MVALUE / hp_opt:是否进行分区列等值过滤优化 / mpp_opt:MPP 模式下插入优化选项,取值:-1:不优化,DPC 环境下取该值;0:不优化,无优化或非 MPP 环境下取该值;1:在随机插入对象表时分发整个插入计划;2:基于 1 的特性,省略 MDIS 分发MPP 模式下查询插入优化处理
INTERSECT无参数集合的交运算,且取交集后删除重复项
INTERSECT ALL无参数集合的交运算,且取交集后不删除重复项
LOCAL BROAD CASTop_id:本地并行模式下节点所属通讯操作符中的序号本地并行模式下,消息广播到各线程,包含必要的聚集函数合并计算
LOCAL COLLECTop_id:本地并行模式下节点所属通讯操作符中的序号 / n_grp_by:分组列个数 / n_cols:输出列个数 / n_keys:分发列的个数 / for_sync:该操作符是否仅用于同步本地并行模式下数据收 集 处 理 , 代 替LOCAL GATHER
LOCAL DISTRIBUTEn_grp:分组列个数 / flt_only:是否只需过滤非当前站点。各站点均拥有完整数据时,分发时只需要过滤掉非当前站点的数据 / flt_site_data:是否需要过滤站点数据,仅当参数 flt_only 为 TRUE 时生效 / pipe_mode(TRUE):是否可优化分区表 / n:本地并行工作的线程数本地并行模式下,消息各线程的相互重分发
LOCAL GATHERop_id:本地并行模式下节点所属通讯操作符中的序号 / n_grp_by:分组列个数 / n_cols:输出列个数 / n_keys:分发列的个数 / invoke_flag:是否在父亲节点存在函数调用的表达式计算。值为 TRUE时从 EP 不执行该计算且直接丢弃儿子节点相关数据 / top_flag:是否有 TOP 子句需要处理本地并行模式下,消息收集到主线程
LOCAL SCATTERop_id:本地并行模式下节点所属通讯操作符中的序号 / notify_only:邮件是否携带通知标记本地并行模式下,主线程向各从线程广播消息
LOCK TID无参数上锁
LSET无参数DBLINK 查询结果集
MERGE INNER JOIN3key_num:等值连接条件数 / KEY:等值连接条件 / KEY_NULL_EQU:连接列的 NULL 值比较策略。取值:0:NULL 与 NULL不相等;1:NULL 与 NULL 相等。例如:(0,1,0)表示第 1 个和第 3 个连接条件中 NULL 值视为不等,第 2 个连接条件中 NULL 值视为相等归并内连接
MERGE SEMI JOIN3(ANTI):是否为反连接 / join_condition:连接条件 / KEY:等值连接条件 / KEY_NULL_EQU:连接列的 NULL 值比较策略。取值:0:NULL 与 NULL不相等;1:NULL 与 NULL 相等。例如:(0,1,0)表示第 1 个和第 3 个连接条件中 NULL 值视为不等,第 2 个连接条件中 NULL 值视为相等归并半连接
MPP BROAD CASTop_id:MPP 模式下节点所属通讯操作符中的序号MPP 模式下,消息广播到各站点,包含必要的聚集函数合并计算
MPP COLLECTop_id:MPP 模式下节点所属通讯操作符中的序号 / n_grp_by:分组列个数 / n_cols:输出列个数 / n_keys:分发列的个数 / for_sync:该操作符是否仅用于同步用于替换顶层 MPP GATHER,除了收集数据到主节点,还增加主从节点间的同步执行功能,防止从节点不断发送数据到主节点造成邮件堆积
MPP DISTRIBUTEop_id:MPP 模式下节点所属通讯操作符中的序号 / n_keys:分发列的个数 / n_grp:分组列个数 / filter:是否只需过滤非当前站点。各站点均拥有完整数据时,分发时只需要过滤掉非当前站点的数据 / rowid_flag:是否根据 rowid 信息获取站点号进行分发 / n:参与计算的站点数,值为 0 时表示其与 EP 个数一致 / slave_empty:是否限制 MPP 从节点向主节点传送数据,或本地并行的从线程向主线程传送数据。取值:0:不限制;1:不允许 MPP 从节点向主节点传送数据;2:不允许本地并行的从线程向主线程传送数据MPP 模式下,消息各站点的相互重分发
MPP GATHERop_id:MPP 模式下节点所属通讯操作符中的序号 / n_grp_by:分组列个数 / n_cols:输出列个数 / n_keys:分发列的个数 / invoke_flag:是否在父亲节点存在函数调用的表达式计算。值为 TRUE时,从 EP 不执行该计算且直接丢弃儿子节点相关数据 / top_flag:是否有 TOP 子句需要处理MPP 模式下,消息收集到主站点
MPP SCATTERop_id:MPP 模式下节点所属通讯操作符中的序号MPP 模式下,主站点向各从站点广播消息
MSYNCop_id:MPP 模式下节点所属通讯操作符中的序号MPP 模式下,数据同步处理
MVCC CHECK无参数多版本检查
NCUR2cursorname:游标名游标操作
NEST LOOP FULL JOIN2join_condition:连接条件嵌套循环全外连接
NEST LOOP INDEX JOIN2join_condition:连接条件索引内连接
NEST LOOP INNER JOIN2join_condition:连接条件 / [with_var]:嵌套连接是否使用 var 方式嵌套循环内连接
NEST LOOP LEFT JOIN2join_condition:连接条件 / [with_var]:嵌套连接是否使用 var 方式 / partition_keys_num:paritition outer join 的 KEY 个数 / ret_null:是否仅返回未匹配的行嵌套循环左外连接
NEST LOOP SEMI JOIN2(ANTI):是否为反连接 / join_condition:连接条件 / [with_var]:嵌套连接是否使用 var 方式 / (colidlist):与 var 变量相关的左表列序号序列。例如(0,1,3)表示三个var 变量依次来自左表的第 1、2、4 列嵌套循环半连接
NSET2无参数结果集收集,一般是查询计划的顶层节点
NTTS2for_mdis:是否从 MPP DISTRIBUTE 获得数据临时表,临时存放数据
PARALLELscan_type:扫描类型 / key_num:分区列计算表达式相关信息,格式为:(分区列的计算表达式中相等的个数,分区列的计算表达式中最后一列起始的个数,分区列的计算表达式中最后一列终止的个数) / simple:是否对包含单分区列的一级分区表进行等值查询优化控制水平分区子表的扫描
PIPE2无参数管道。先做一遍右儿子,然后执行左儿子,并把左儿子的数据向上送,直到左儿子不再有数据
PRJT2exp_num:映射列数 / is_atom:是否要求单行数据关系的 “ 投影”(project)运算,用于选择表达式项的计算
PSCN无参数批量参数当作表来扫描
REMOTE SCANtabname@dblink_name:表名@dblink 连接名 / alias_name:表的别名DBLINK 远程表扫描
RN无参数实现 ROWNUM 查询
RNSK(rownum_exp):与 rownum 相关的过滤条件ROWNUM 作为过滤条件时的计算处理
SAGR2grp_num:分组项个数 / sfun_num:返回上层操作符的集函数个数 / distinct_flag:集函数参数是否去重 / top_num:是否只返回前 N 组 / slave_empty:是否限制 MPP 从节点向主节点传送数据,或本地并行的从线程向主线程传送数据。取值:0:不限制;1:不允许 MPP 从节点向主节点传送数据;2:不允许本地并行的从线程向主线程传送数据 / keys:分组项如 果 输 入 流 是 有 序的,则使用流分组,并计算聚集函数
SELECT INTO2无参数查询插入
SET TRANSACTIONwriteable:是否为可更新事务 / iso_level:事务隔离级别,取值:READ UNCOMMITTED:读未提交;READ COMMITTED :读提交; REPEATABLE READ : 可 重 复 读 ;SERIALIZABLE:可序列化事务操作(START 除外)
SLCT2(condition):过滤条件 / SLCT_PUSHDOWN(TRUE):是否进行过滤条件下推的优化关系的 “ 选 择 ”(select)运算,用于查询条件的过滤
SORT2key_num:排序列个数 / is_distinct:排序时是否进行去重操作 / is_adaptive:是否使用排序的自适应优化(即当下层数据有序时,此次排序实际不进行)排序
SORT3key_num:排序列个数 / is_distinct:排序时是否进行去重操作 / top_flag:是否返回排序后的 N 行 / is_adaptive:是否使用排序的自适应优化(即当下层数据有序时,此次排序实际不进行)排序
SPL2stask_no:子任务的序号,-1 表示 root 子任务 / key_num:包含 ROWID 在内的 KEY 数 / spool_num:SPOOL 临时表编号 / is_atom:是否限制只能产生单行结果 / has_var:外层传入变量存在性探测结果(相关查询需探测外层传入变量) / sites:站点的 ID 和并行度序列,“-”表示空。例如:(1:3,2:4)表示 1 号站点并行度 3,2 号站点并行度 4临时表。和 NTTS2 不同的是,它的数据集不向父亲节点传送,而是被编号,用编号和 KEY 来定位访问;而 NTTS2 的数据,主动传递给父亲节点
SSCNidxname(tabname) :索引名(表名)直接使用二级索引进行扫描
SSEK2scan_type:扫描类型 / idxname(tabname) :索引名(表名) / scan_range:扫描范围二级索引数据定位
START TRANSACTIONwriteable:是否为可更新事务 / iso_level:事务隔离级别,取值:READ UNCOMMITTED:读未提交;READ COMMITTED :读提交; REPEATABLE READ : 可 重 复 读 ;SERIALIZABLE:可序列化启动会话
STAT无参数统计信息计算
TOPN2top_num:TOP 子句的行数表达式 / top_off:top_num 的偏移量。例如:top_off=3、top_num=4 时,从第 3 行后开始,取第 4 到第 7 共 4 行结果 / top_percent:top_num 的百分比。例如:top_percent=0.5、top_num=100 时,取前 50 行结果(参数 top_off 和 top_percent不会同时出现)取前 N 条记录
UFLTIS_TOP_1:是否在更新操作时相同 ROWID 只保留 1 条记录,防止碰到重复数据报错处理 UPDATE FROM子句
UNION无参数无参数
UNION ALLCTE:递归 WITH 查询名UNION ALL 运算
UNION ALL(MERGE)merge_type:排序方式,取值:A:升序排列;D:降序排列;L:升序排列,NULL 值结果排在末尾;1:降序排列,NULL 值结果排在末尾 / n_merge_keys:表的列数UNION ALL 运算(使用归并)
UNION FOR OR(MERGE)merge_type:排序方式,取值:A:升序排列;D:降序排列;L:升序排列,NULL 值结果排在末尾;1:降序排列,NULL 值结果排在末尾 / n_merge_keys:表的列数 / n_dist_keys:去重的列数OR 过滤的 UNION 计算(使用归并)
UNION_FOR_OR2key_num:需要进行去重操作的列数 / outer_join:UNION 操作的外连接类型,取值:L:左外连接;R:右外连接;F:全外连接;-:非外连接OR 过滤的 UNION 计算
UPDATE(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink 连接名”作为后缀 / type:更新类型,取值:SELECT、CURSOR / mpp_opt:是否通过发送整个计划实现对 MPP 处理的优化 / hp_opt:是否进行分区列等值过滤优化更新数据
UPDATE_REMOTE(partition_type):分区类型,取值:Vertical Partition:垂直分区;Horizon Partition:水平分区;为空表示不分区 / table:表名或视图名,“-”表示空,使用远程操作时会增加“@”+“dblink 连接名”作为后缀 / type:更新类型,取值:SELECT、CURSOR / mpp_opt:是否通过发送整个计划实现对 MPP 处理的优化 / hp_opt:是否进行分区列等值过滤优化DBLINK 更新操作

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/640188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

生成当天递增唯一的流水号的几种方式

说明&#xff1a;当开发中&#xff0c;如交易、文件传输过程中的文件名&#xff0c;可能需要我们使用一串唯一的数字来锁定这一条“交互记录”&#xff0c;即流水号。 本文介绍几种生成6位递增唯一&#xff0c;且每日重置的流水号的方式。 方式一&#xff1a;使用Redis 我们…

模仿ProTable创建ProTable组件

不多说废话直接上代码 父组件 // index.jsx/*** description 此ProTable是根据ProComponents里的ProTable模仿封装的简易版本* */ import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from react import { Card, Table } from antd import…

SpringSecurity(11)——核心组件和认证流程

获取用户信息 // 获取安全上下文对象&#xff0c;就是那个保存在 ThreadLocal 里面的安全上下文对象 // 总是不为null(如果不存在&#xff0c;则创建一个authentication属性为null的empty安全上下文对象) SecurityContext securityContext SecurityContextHolder.getContext(…

微信轰炸-python实现方法

新手&#xff0c;一般都需要执行以下命令&#xff0c;用来导入对应模块 pip install -i Simple Index pynput 键盘winr进入输入cmd 执行该命令即可&#xff1a;pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pynput 打开pycharm,输入代码如下 from pynput.keybo…

AI视频智能识别技术在智慧农业大棚升级改造管理场景中的应用方案

一、需求分析 随着科技的进步和农业现代化的推进&#xff0c;智能化技术逐渐成为现代农业发展的重要支撑。农业大棚作为现代农业的重要组成部分&#xff0c;其智能化改造对于提高农业生产效率、降低成本、增加收益具有重要意义。利用先进的信息化手段来对农业大棚进行管理&…

NOC总线(2)

1. NoC的路由 在NoC交换信息时&#xff0c;需要确定从源节点到目标节点所经过的路径&#xff0c;这时就需要路由算法来确定该路径。路由算法分为静态路由算法和动态路由算法两种。 静态路由算法对于两节点之间的路径是固定的&#xff0c;结构简单&#xff0c;便于硬件实…

【算法分析与设计】二叉树的层序遍历

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;算法分析与设计 ⛺️稳中求进&#xff0c;晒太阳 题目 给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xf…

idea插件开发

1&#xff0c; file-new project 如图&#xff0c;选择了安装路径&#xff0c;报错【select home directory for intellij platform plugin sdk】。&#xff08;注意是安装路径最外层的文件夹&#xff0c;不是里面的lib&#xff0c;jbr这一层级&#xff09; 2&#xff0c;点击了…

HTML前端CSS实现只显示1行或者2行、3行剩余显示省略号

想要做的效果: 文本只一行显示 /**实现思路&#xff1a;1.设置inline-block属相2.强制不换行3.固定高度4.隐藏超出部分5.显示“……”*/ {display: inline-block;white-space: nowrap; width: 100%; overflow: hidden;text-overflow:ellipsis; }文本只多行显示 /** 实现思路&…

spring boot集成redis,以及配置database不生效问题

备注&#xff1a;记录一次spring-boot redis 配置redis.database后&#xff0c;仍然使用db0默认库的情况。 springboot集成redis及相关问题 1. spring boot集成redisredis集成依赖&#xff1a;redis配置序列化 2. 集成redission redis分布式锁等快捷管理工具集成依赖配置注入…

【Java发送邮箱】spring boot 发送邮箱

导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId> </dependency> 2.在properties配置邮箱 # 发件人QQ号 spring.mail.username2508575653qq.com # QQ邮箱授权码 sp…

分享一个asio下使用channel来实现无需队列的安全的连续async_write的方法

分享一个asio下使用channel来实现无需队列的安全的连续async_write的方法 问题&#xff1a;不能直接用asio::async_write连续发送数据 下面这段代码是错误的(为了代码的可读性和易理解&#xff0c;请先忽略函数调用中参数不正确的问题)&#xff1a; asio::async_write(sock,…

xshell配置隧道转移规则

钢铁知识库&#xff0c;一个学习python爬虫、数据分析的知识库。人生苦短&#xff0c;快用python。 xshell是什么 通俗点说就是一款强大ssh远程软件&#xff0c;可以方便运维人员对服务器进行管理操作&#xff0c;功能很多朋友们自行探索&#xff0c;今天只聊其中一个功能点那…

Numpy笔记:安装Numpy+ndarray基本属性+常用方法+索引和切片+广播+轴+范数

Numpy Python库&#xff0c;用于数组快速操作的各种API 支持常见的数组和矩阵操作ndarray处理多维数组 安装Numpy 检查PyCharm的Python运行环境 File–>Settings–>Project–>Python Interpreter检查Python Interpreter环境&#xff0c;例如base 点击Anaconda Prom…

从0开始学习C++ 第三十课 插入排序和快速排序

插入排序 (Insertion Sort) 概念&#xff1a; 插入排序是一种简单直观的排序算法&#xff0c;它的工作原理是通过构建有序序列&#xff0c;对于未排序数据&#xff0c;在已排序序列中从后向前扫描&#xff0c;找到相应位置并插入。 逐步分析&#xff1a; 从数组第二个元素开…

HNU-数据挖掘-实验2-数据降维与可视化

数据挖掘课程实验实验2 数据降维与可视化 计科210X 甘晴void 202108010XXX 文章目录 数据挖掘课程实验<br>实验2 数据降维与可视化实验背景实验目标实验数据集说明实验参考步骤实验过程1.对数据进行初步降维2.使用无监督数据降维方法&#xff0c;比如PCA&#xff0c;I…

既是API调试平台也是自动化测试工具?Apipost

Apipost提供可视化的API自动化测试功能&#xff0c;使用Apipost研发人员可以设计、调试接口&#xff0c;测试人员可以基于同一数据源进行测试&#xff0c;Apipost 接口自动化功能在上次更新中进行了逻辑调整&#xff0c;带来更好的交互操作、更多的控制器选择&#xff0c;同时新…

代码随想录算法训练营第四十一天 | 343.整数拆分、66.不同的二叉搜索树

343.整数拆分 题目链接&#xff1a;343.整数拆分 给定一个正整数 n &#xff0c;将其拆分为 k 个 正整数 的和&#xff08; k > 2 &#xff09;&#xff0c;并使这些整数的乘积最大化。 返回 你可以获得的最大乘积 。 文章讲解/视频讲解&#xff1a;https://programmerca…

SpringMvc中拦截器的配置及应用

拦截器原理 在 Spring MVC 中&#xff0c;拦截器&#xff08;Interceptor&#xff09;是一种机制&#xff0c;用于拦截请求并在处理程序&#xff08;Controller&#xff09;执行之前或之后执行一些操作。拦截器允许您在请求的不同阶段&#xff08;如处理程序执行前、处理程序执…

AI大模型中的Bert

1.全方位上下文理解&#xff1a;与以前的模型&#xff08;例如GPT&#xff09;相比&#xff0c;BERT能够双向理解上下文&#xff0c;即同时考虑一个词 的左边和右边的上下文。这种全方位的上下文理解使得BERT能够更好地理解语言&#xff0c;特别是在理解词义、 消歧等复杂任务上…