[发明专利]基于逻辑代数的SQL查询语句优化方法在审
申请号: | 202110884674.2 | 申请日: | 2021-08-03 |
公开(公告)号: | CN113505132A | 公开(公告)日: | 2021-10-15 |
发明(设计)人: | 鲁昕 | 申请(专利权)人: | 杭州普数软件有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242;G06F16/2453 |
代理公司: | 北京细软智谷知识产权代理有限责任公司 11471 | 代理人: | 葛钟 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 逻辑 代数 sql 查询 语句 优化 方法 | ||
1.一种基于逻辑代数的SQL查询语句优化方法,其特征在于,包括:
获取查询语句,并将所述查询语句中的OR逻辑和AND逻辑作为逻辑子句的分割定义点,构建得到多颗树状结构的数据结构的森林;
基于逻辑代数运算原理,对所述森林中的单子树进行优化;
将优化后的多个树的根节点进行逻辑合并,得到最优逻辑查询计划。
2.根据权利要求1所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述将所述查询语句中的OR逻辑和AND逻辑作为逻辑子句的分割定义点,构建得到多颗树状结构的数据结构的森林,包括:
将查询语句的OR逻辑抽象为数据公式中的或,将查询语句的AND逻辑抽象为数学公式中的与;
将一个查询语句定义为一个命题合集,将用OR逻辑和AND逻辑连接的查询语句作为命题子句;
将第一级别中的或作为树与树之间的分割,构建得到多个树状结构的数据结构森林。
3.根据权利要求1所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述单子树包括复杂命题形式和单命题形式。
4.根据权利要求3所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述基于逻辑代数运算原理,对所述森林中的单子树进行优化,包括:
基于逻辑代数的分配率,将复合命题进行拆分。
5.根据权利要求4所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述基于逻辑代数运算原理,对所述森林中的单子树进行优化,还包括:
当存在复合命题与单命题为且时,直接将该单命题作为化简结果。
6.根据权利要求1所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述基于逻辑代数运算原理,对所述森林中的单子树进行优化,还包括:
将二类子节点进行简化升级为一类叶子节点。
7.根据权利要求6所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述基于逻辑代数运算原理,对所述森林中的单子树进行优化,还包括:
从最底节点开始,进行层级的简化。
8.根据权利要求1所述的基于逻辑代数的SQL查询语句优化方法,其特征在于,所述将优化后的多个树的根节点进行逻辑合并,得到最优逻辑查询计划,包括:
将多个树的根结点进行逻辑合并;
检测所述根节点之间是否存在一个大集合与一个小集合的OR逻辑;
若存在,将所述小集合简化,将大集合直接作为该大集合与该小集合OR逻辑的结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州普数软件有限公司,未经杭州普数软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110884674.2/1.html,转载请声明来源钻瓜专利网。