opengauss代码分析
文章平均质量分 86
shmilyyiyi
这个作者很懒,什么都没留下…
展开
-
查询代码-node解析
表明 ts_make_var 函数返回一个指向 Var 结点的指针,接受四个参数:pstate 是一个指向 ParseState 结构体的指针,rte 是一个指向 RangeTblEntry 结构体的指针,attrno 是变量的属性编号,location 是变量在源文本中的位置。这是函数的声明,表明 transformArrayType 函数返回一个 Oid 类型的值,接受两个参数:arrayType 是一个指向 Oid 类型的指针,arrayTypmod 是一个指向 int32 类型的指针。原创 2024-01-09 00:32:19 · 944 阅读 · 0 评论 -
查询代码-expr解析
文件路径/src/common/backend/parser/parse_expr.cpp文件内容在这篇文章中我会解释一下几个函数的基本内容和作用: static Const* BuildColumnBaseValue(Form_pg_attribute attTup) { if (IsBaseRightRefSupportType(attTup->atttypid)) { Datum datum = GetTypeZeroValu原创 2024-01-08 23:53:30 · 765 阅读 · 0 评论 -
查询代码-caluse解析
在SQL中,目标列表只能引用FROM子句中指定的范围变量,但是在这里,我们遵循更强大的POSTQUEL语义,并在没有指定范围变量的情况下自动生成范围变量。然而,有时我们需要知道条目是否合法。函数功能:根据给定的左右关系表条目(RangeTblEntry)、左侧变量列表和右侧变量列表,构建一个用于JOIN USING子句的操作树。函数功能:功能是将一个RangeVar转换为RangeTblEntry,RangeVar是一个表的名称或别名,而RangeTblEntry是一个查询中的表的条目。原创 2024-01-08 23:47:24 · 935 阅读 · 0 评论