[发明专利]一种对多个相关谓词进行合并的方法在审
申请号: | 201710606871.1 | 申请日: | 2017-07-24 |
公开(公告)号: | CN107632999A | 公开(公告)日: | 2018-01-26 |
发明(设计)人: | 余鹏;李建辉;熊中哲;魏兴华;臧冰凌;李春;陈栋;张文件;罗春 | 申请(专利权)人: | 杭州沃趣科技股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 浙江杭知桥律师事务所33256 | 代理人: | 王梨华,陈丽霞 |
地址: | 310052 浙江省杭州市滨江区长河街道滨*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 相关 谓词 进行 合并 方法 | ||
1.一种对多个相关谓词进行合并的方法,其特征在于,包括如下步骤:
S100、处理谓词表达式:将谓词表达式处理成父表达式为and操作符,且子表达式为基础表达式,基础表达式包括一元操作表达式和二元操作表达式,子表达式中的谓词用or操作符连接起来的表达式,进行消除重复表达式;
S200、优先遍历步骤S100中处理过的谓词表达式,合并谓词,进行递归处理,对谓词表达式,如是基础表达式,则退出,完成合并;如不是,则对表达式的参数进行合并。
2.根据权利要求1所述的一种对多个相关谓词进行合并的方法,其特征在于:步骤S100中,消除重复表达式用布尔代数的公式进行推导,在推导的过程中,对发现的重复谓词进行消除。
3.根据权利要求1所述的一种对多个相关谓词进行合并的方法,其特征在于:步骤S100中,一元操作表达式为参数是一个表的列名或一个常量,二元操作表达式为参数是一个表的列名和一个常量。
4.根据权利要求1所述的一种对多个相关谓词进行合并的方法,其特征在于:步骤S200中,还包括:
S210、将表达式中的各个子表达式进行分组,将基础表达式根据表中的列名进行分组;
S220、对分组后的子表达式中的谓词进行合并,如是and表达式,进入步骤S230;如果是or表达式,进入到步骤S240;
S230、对and表达式下的分组,取交集,过程如下:交集结果初始化为常量true,遍历组内每个基础谓词,将当前谓词与交集结果取交集,如不存在交集则跳出,如存在则依次处理下一个基础谓词,直到完成所有组内基础谓词;
S240、对or表达式下的分组进行合并,取并集,过程如下:并集结果初始化为常量FALSE,遍历组内每个基础谓词,将当前谓词与交集结果取并集,如交集结果为TRUE,则退出;如不是TRUE,则依次处理下一个基础谓词,直到完成所有组内基础谓词;
S250、将合并之后的谓词表达式替换原有表达式,如合并之后的谓词表达式是常量,则根据谓词的输入,将谓词中可替换的表达式替换成常量,直到全部替换成当前表达式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州沃趣科技股份有限公司,未经杭州沃趣科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710606871.1/1.html,转载请声明来源钻瓜专利网。