暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss ValuesScan算子

openGauss小助手 2021-10-17
398

ValuesScan算子用于处理“Values (…),(…), …”类型语句,从值列表中输出元组,对应与ValuesScan计划节点,相关的代码源文件是“nodeValuesScan.cpp”。values_lists数组存储值表达式列表。算子对应的主要函数如表7-19所示。

表7-19 ValuesScan 主要函数

主要函数说明
ExecInitValuesScan初始化ValuesScan状态节点
ExecValuesScan迭代获取元组
ExecEndValuesScan清理ValuesScan状态节点
ExecValuesMarkPos标记扫描位置
ExecEndValuesRestrPos重置扫描位置
ExecResScanValuesScan重置ValuesScan状态节点

ExecInitValuesScan函数初始化ValuesScan状态节点,该函数把值表达式链表转换成表达式数组,该表达式数组即为元组集合。

ExecValuesScan函数迭代输出元组,通过回调函数调用ValuesNext函数实现,curr_idx字段是偏移位置,从exprlists数组中逐一取出数值构造元组。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论