[发明专利]一种关系型数据库SQL语句外连接转内连接方法和装置在审
申请号: | 202111347300.3 | 申请日: | 2021-11-15 |
公开(公告)号: | CN114064701A | 公开(公告)日: | 2022-02-18 |
发明(设计)人: | 范国腾;尹强 | 申请(专利权)人: | 北京人大金仓信息技术股份有限公司 |
主分类号: | G06F16/2452 | 分类号: | G06F16/2452;G06F16/28 |
代理公司: | 北京开阳星知识产权代理有限公司 11710 | 代理人: | 王艳斌 |
地址: | 100102 北京市朝阳区容*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 关系 数据库 sql 语句 接转 连接 方法 装置 | ||
本公开涉及一种关系型数据库SQL语句外连接转内连接方法和装置。其中,方法包括:获取外连接,获取外连接对应的约束条件,判断约束条件是否满足空值拒绝条件,在约束条件满足空值拒绝条件下,将外连接转换为内连接。由此,在约束条件满足空值拒绝条件时将外连接转换为内连接,以提高后续优化操作效率。
技术领域
本公开涉及数据库技术领域,尤其涉及一种关系型数据库SQL语句外连接转内连接方法和装置。
背景技术
随着移动互联网、大数据、人工智能等新应用场景以及新型硬件技术的发展,数据库管理系统(DBMS,Database Management System)在规模和复杂性方面有了显著的增加,数据库的性能问题也越发凸显。
目前,SQL(Structured Query Language,结构化查询语言)语句的查询优化是数据库系统的一个重要课题。其中,外连接是在SQL2标准中被加入的新操作符,用于表示希望在连接时保留一个表中的所有元组,即使有些元组没有符合连接条件。通常,SQL语句中的外连接,包括左连接,右连接和全连接。外连接存在的问题在于该操作符不符合交换律也不符合结合律,从而影响后续的优化操作。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种关系型数据库SQL语句外连接转内连接方法和装置。
本公开提供了一种关系型数据库结构化查询语言SQL语句外连接转内连接方法,包括:
获取外连接;
获取所述外连接对应的约束条件;
判断所述约束条件是否满足空值拒绝条件;
在所述约束条件满足所述空值拒绝条件的情况下,将所述外连接转换为内连接。
在本公开可选的实施例中,所述的关系型数据库SQL语句外连接转内连接方法,还包括:
在所述约束条件不满足所述空值拒绝条件的情况下,将所述外连接转换为内连接和反连接的析取操作;
基于执行代价,从所述外连接和所述析取操作中确定目标执行计划。
在本公开可选的实施例中,所述的关系型数据库SQL语句外连接转内连接方法,还包括:
基于外连接执行结果集数据表确定所述外连接的约束条件;
在所述外连接的上层查询设置所述约束条件。
在本公开可选的实施例中,所述判断所述约束条件是否满足空值拒绝条件,包括:
检测所述外连接的上层查询是否设置所述约束条件;
在所述外连接的上层查询设置所述约束条件的情况下,判断所述约束条件是否包含可空类型表。
在本公开可选的实施例中,所述外连接为全连接;所述判断所述约束条件是否满足所述外连接对应的空值拒绝条件,包括:
判断所述全连接的约束条件中左连接约束条件是否满足所述空值拒绝条件;
所述在所述约束条件满足所述空值拒绝条件的情况下,将所述外连接转换为内连接,包括:
在所述左连接约束条件满足所述空值拒绝条件的情况下,将所述全连接转换为左连接,将所述左连接转换为所述内连接。
在本公开可选的实施例中,所述的关系型数据库SQL语句外连接转内连接方法,还包括:
在所述左连接约束条件不满足所述空值拒绝条件的情况下,判断所述全连接的约束条件中右连接约束条件是否满足所述空值拒绝条件;
所述在所述约束条件满足所述空值拒绝条件的情况下,将所述外连接转换为内连接,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京人大金仓信息技术股份有限公司,未经北京人大金仓信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111347300.3/2.html,转载请声明来源钻瓜专利网。