1 .一种数据库操作语句的处理方法,包括:
获取所述数据库操作语句;
判断所述数据库操作语句的条件语句中是否存在或逻辑关键词;
若是,则判断所述或逻辑关键词连接的两个条件子句是否存在记录存在判定关键词对
应的相关子连接;
在存在所述记录存在判定关键词对应的所述相关子连接的情况下,根据所述记录存在
判定关键词对所述数据库操作语句进行转换。
2 .根据权利要求1所述的数据库操作语句的处理方法,其中,
所述记录存在判定关键词包括:exists;
所述根据所述记录存在判定关键词对所述数据库操作语句进行转换的步骤包括:
在所述记录存在判定关键词为exists的情况下,判断所述相关子连接中的子连接查询
表是否为空表;
若否,则将所述或逻辑关键词关联的另一所述条件子句下推至所述相关子连接中以完
成所述转换。
3 .根据权利要求2所述的数据库操作语句的处理方法,其中,
所述在所述记录存在判定关键词为exists的情况下,判断所述相关子连接中的子连接
查询表是否为空表的步骤之后还包括:
在所述相关子连接中的子连接查询表为空表的情况下,消除所述相关子连接。
4 .根据权利要求2所述的数据库操作语句的处理方法,其中,
所述判断所述或逻辑关键词连接的两个条件子句是否存在记录存在判定关键词对应
的相关子连接的步骤之后还包括:
在所述或逻辑关键词连接的两个条件子句不存在记录存在判定关键词对应的相关子
连接的情况下,判断所述或逻辑关键词连接的两个条件子句是否存在多值匹配关键词对应
的子连接,所述多值匹配关键词包括:any、some;
若是,则将所述多值匹配关键词对应的子连接等价转换为exists对应的相关子连接;
根据转换后的数据库操作语句执行在所述记录存在判定关键词为exists的情况下,判
断所述相关子连接中的子连接查询表是否为空表的步骤。
5 .根据权利要求1所述的数据库操作语句的处理方法,其中,
所述记录存在判定关键词包括:not exists;
所述根据所述记录存在判定关键词对所述数据库操作语句进行转换的步骤包括:
在所述记录存在判定关键词为not exists的情况下,判断所述相关子连接中的子连接
查询表是否为空表;
若否,则将所述或逻辑关键词关联的另一所述条件子句下推至所述相关子连接中以完
成所述转换。
6 .根据权利要求5所述的数据库操作语句的处理方法,其中,
所述将所述或逻辑关键词关联的另一所述条件子句下推至所述相关子连接中以完成
所述转换的步骤包括:
使用lnnvl函数将另一所述条件子句包裹并下推至所述相关子连接中以完成所述转
换。
权 利 要 求 书
1/2 页
2
评论