[发明专利]一种数据库中数据查询方法、装置、设备及存储介质有效
申请号: | 202011065950.4 | 申请日: | 2020-09-30 |
公开(公告)号: | CN112199390B | 公开(公告)日: | 2023-05-30 |
发明(设计)人: | 韩朱忠;朱仲颖;孟正凌 | 申请(专利权)人: | 上海达梦数据库有限公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/242;G06F16/2455 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 201203 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 数据 查询 方法 装置 设备 存储 介质 | ||
本发明实施例公开了一种数据库中数据查询方法、装置、设备及存储介质,该方法包括:解析所接收的查询语句;当查询语句中存在where过滤条件时,确定查询语句的待查询表集合中数据表的查询数量;当查询数量在预设的数量范围内时,针对从待查询表集合中选定的目标数据表,根据预设的语句转换条件和语句转换规则对查询语句中目标数据表所关联的语句进行优化得到优化后的查询语句,以实现根据优化后的查询语句进行数据查询,解决多个数据表进行查询时,数据表的数量超过集合的表数量上限时必须划分多个集合进行查询的问题,无需将数据表划分多个集合就可以实现数据的快速查询,无需进行多次代价估算,降低了处理复杂度,节省资源,提高查询速度。
技术领域
本发明实施例涉及数据库技术领域,尤其涉及一种数据库中数据查询方法、装置、设备及存储介质。
背景技术
在数据库中进行数据查询操作时,当一条结构化查询语言(Structured QueryLanguage,SQL)查询语句中涉及到两个及以上的表时,就需要对这些表进行连接查询。连接操作符一次对两个表进行连接,当N个表参与连接时,会进行N-1次两表连接操作。各个表参与连接的顺序,由优化器根据代价估算来决定。随着参与连接的表的数量增加,可能产生的连接方式数量以排列组合的方式增长,当庞大数量的表参与连接时,想要逐个分析这些连接方式的代价必然会消耗大量的资源。
目前,在处理大量数据表参与连接的查询时,会先将这些表划分为若干个集合,在集合内部分析代价找到该集合的最优连接方式,之后再对这些集合进行连接。每个集合的表数量由参数MAX_OPT_N_TABLES来控制。例如,当MAX_OPT_N_TABLES设置为6时,若共有15个表参与连接,则这15个表会被划分为6+6+3三个集合,每个集合内部根据代价估算选出最优连接方式,然后再对这个三个集合进行连接。
但是此处理方式可能会产生如下问题:MAX_OPT_N_TABLES设置为6时,当参与连接的表为7个,8个时,将表划分为6+1、6+2这样的两个集合,每个集合内部通过代价估算选出最优连接方式,然后再对集合进行连接,增加了系统处理的复杂度,浪费系统资源。
发明内容
本发明提供一种数据库中数据查询方法、装置、设备及存储介质,以实现数据快速查询,降低数据处理复杂度,节省资源。
第一方面,本发明实施例提供了一种数据库中数据查询方法,所述数据库中数据查询方法包括:
解析所接收的查询语句;
当所述查询语句中存在where过滤条件时,确定所述查询语句的待查询表集合中数据表的查询数量;
当所述查询数量在预设的数量范围内时,针对从所述待查询表集合中选定的目标数据表,根据预设的语句转换条件和语句转换规则对所述查询语句中目标数据表所关联的语句进行优化得到优化后的查询语句,以实现根据优化后的查询语句进行数据查询。
第二方面,本发明实施例还提供了一种数据库中数据查询装置,该数据库中数据查询装置包括:
解析模块,用于解析所接收的查询语句;
确定模块,用于当所述查询语句中存在where过滤条件时,确定所述查询语句的待查询表集合中数据表的查询数量;
优化模块,用于当所述查询数量在预设的数量范围内时,针对从所述待查询表集合中选定的目标数据表,根据预设的语句转换条件和语句转换规则对所述查询语句中目标数据表所关联的语句进行优化得到优化后的查询语句,以实现根据优化后的查询语句进行数据查询。
第三方面,本发明实施例还提供了一种设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011065950.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置