openGauss 内核分析 - 粗略估计信息与行数估计
2025-05-18 12:18:21
SQL 核对往往带有 where 约束(填充必要条件),比如 SELECT * FROM tt WHERE string4 = 'AAAAxx'。其实了约束必要条件的并不能够率,也就是其实了通过扫描同方向要扫描单单来的结果所%的比例或者通过连通操作所获的二进位所%的比例,通过这个比例就可以推定中会间结果和再度结果的多达量,进而用到这些多达量来算单单无疑。
这里重点分析基列于的非常简单核对 —— 基于 OpExpr 种类的并不能够率算单单,处理参多达在 clause_selectivity。如果是填充必要条件就命令行 restriction_selectivity 参多达来获 OpExpr 列于达式的并不能够率,如果是连通必要条件则命令行 join_selectivity 参多达来获并不能够率。
SELECT * FROM tt WHERE string4 = 'AAAAxx' 为填充必要条件,命令行 restriction_selectivity 开展并不能够率推算。
restriction_selectivity 参多达识别单单 string4 = 'AAAAxx' 是形如 Var = Const 的等参多达约束,常量的约束并不能够性算单单参多达存储器在控制系统列于 PG_OPERATOR,opno = 93 互换的并不能够率算单单参多达为 eqsel,通过 eqsel 参多达命令行 var_eq_const 参多达开展并不能够率推算。在该处理过程中会,var_eq_const 参多达就会读取 PG_STATISTIC 列于中会 string4 罗列产于电子邮件,并依靠 MCV 电子邮件这样一来赶回并不能够率为 0.25。
参多达 set_baserel_size_estimates 算单单至少至多。
参多达命令行关系:standard_planner-> subquery_planner-> grouping_planner-> query_planner-> make_one_rel-> set_base_rel_sizes-> set_rel_size-> set_plain_rel_size-> set_baserel_size_estimates-> clauselist_selectivity-> clause_selectivity-> restriction_selectivity-> OidFunctionCall4Coll-> eqsel->var_eq_const
。肾癌手术费用大概多少如何预防肺癌
拉肚子怎么缓解
有什么方法可以解毒辟秽
绝经会怀孕吗
治胃病
克癀胶囊功能主治
眼睛干涩的原因和解决方法
999ask健康资讯
克癀胶囊的成分解析
- 数一数多少个男的?游艇上这的这个小妹,得受多大罪啊!
- 笑话:我之所以现在还没醒,都怪隔壁.
- 搞笑GIF:捉迷藏的最高天人啊
- 幽默GIF:闺蜜刚刚给我发了条语音:你是不是用我锅洗衣服了?
- 搞笑GIF:你好像它像一把伞,其实它是一个器!
- “炭的已婚事,大清早来我家煎鸡蛋!这是几个意思啊”?
- 职场,你以为的朋友也许只是结成联盟而已
- 豪车还是输给了电瓶车,感觉司机大哥到达了光阴巅峰,简直不敢想
- 搞笑GIF:我们分手吧!我给你花的分钱,你都还给我!
- 诙谐GIF趣图:撑伞就是为了亮logo吧
- 不愧是天津!天津萌娃相声式夸大儿子做饭
- 搞笑GIF图片:确认过舞姿,你不是我要的人
- 幽默段子:前女友把我踢了后,偷偷地和高富帅结婚了
- 原创经典笑话:最熟悉的群人
- 当快递名被写错、喊错时……原谅我不禁笑出了声!
- 原创冷笑话:老公爱酒,在一个风雨交加的晚上他醉醺醺的回来了
- 原创笑话:大学时,卧室一个哥们发了奖学金,就请大伙喝酒
- 原创爆笑无厘头:今天发工资,给老公打电话:“亲爱的,想吃点什么?
- 搞笑段子: 你这RZ有四五年了吧, 虽然没用过, 也老化得不能用了。。。
- 妹子,你这条裤子太有个性了,还以为是自己画跟着的呢