1 .一种数据库操作语句的谓词逻辑优化方法,包括:
所述数据库的优化器获取所述数据库操作语句;
判断所述数据库操作语句是否符合谓词优化条件;
在符合谓词优化条件的情况下,对所述数据库操作语句中的条件子句进行谓词逻辑转
换;
用转换后的数据库操作语句继续执行优化器的操作。
2.根据权利要求1所述的数据库操作语句的谓词逻辑优化方法,其中,
所述对所述数据库操作语句中的查询条件进行谓词逻辑转换的步骤包括:
判断所述数据库操作语句的查询条件中是否存在因果关系;
若是,则获取所述数据库操作语句中存在所述因果关系的字段。
3 .根据权利要求2所述的数据库操作语句的谓词逻辑优化方法,其中,
所述获取所述数据库操作语句中存在所述因果关系的字段的步骤之后还包括:
依次对所述字段通过谓词传递闭包找出隐含条件。
4 .根据权利要求3所述的数据库操作语句的谓词逻辑优化方法,其中,
所述依次对所述字段通过谓词传递闭包找出隐含条件的步骤之后包括:
将所述隐含条件添加至所述数据库操作语句中,得到转换后的数据库操作语句。
5 .根据权利要求1所述的数据库操作语句的谓词逻辑优化方法,其中,
所述判断所述数据库操作语句是否符合谓词优化条件的步骤包括:
判断所述数据库操作语句是否为DML语句;
若是,则检查所述数据库操作语句的父查询或嵌套子查询中是否存在条件子句。
6 .根据权利要求5所述的数据库操作语句的谓词逻辑优化方法,其中,
所述检查所述数据库操作语句的父查询或嵌套子查询中是否存在条件子句的步骤之
后包括:
在所述数据库操作语句的父查询或嵌套子查询中存在条件子句的情况下,判定所述数
据库操作语句符合谓词优化条件。
7 .根据权利要求5所述的数据库操作语句的谓词逻辑优化方法,其中,
所述检查所述数据库操作语句的父查询或嵌套子查询中是否存在条件子句的步骤之
后还包括:
在所述数据库操作语句的父查询或嵌套子查询中不存在条件子句的情况下,则检查所
述数据库操作语句的视图、函数中是否含有条件子句。
8.根据权利要求7所述的数据库操作语句的谓词逻辑优化方法,其中,
所述检查所述数据库操作语句的视图、函数中是否含有条件子句的步骤之后包括:
在所述数据库操作语句的视图、函数中含有条件子句的情况下,判定所述数据库操作
语句符合谓词优化条件。
9.一种机器可读存储介质,其上存储有机器可执行程序,所述机器可执行程序被处理
器执行时实现根据权利要求1至8任一项所述的数据库操作语句的谓词逻辑优化方法。
10.一种计算机设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运
行的机器可执行程序,并且所述处理器执行所述机器可执行程序时实现根据权利要求1至8
任一项所述的数据库操作语句的谓词逻辑优化方法。
权 利 要 求 书
1/1 页
2
评论