数据查询方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:38356313 阅读:10 留言:0更新日期:2023-08-05 17:27
本申请实施例提供了一种数据查询方法、装置、电子设备及计算机可读存储介质,涉及计算机技术领域。本申请实施例中,通过确定原始查询语句对应的至少一种查询拓扑关系;对查询拓扑关系进行解析处理,得到查询拓扑关系对应的查询子操作,并确定查询子操作对应的子操作语句;根据子操作语句,确定查询子操作所操作的第一数据量;根据第一数据量,确定查询目标数据的目标查询拓扑关系。这样,可以在原始查询语句对应的多种查询拓扑关系中,选择优选的目标查询拓扑关系,例如,可以选择查询目标数据时所操作的数据量最少的查询拓扑关系作为目标查询拓扑关系,通过目标查询拓扑关系查询目标数据,可以实现节约查询时间,提高查询效率。提高查询效率。提高查询效率。

【技术实现步骤摘要】
数据查询方法、装置、电子设备及计算机可读存储介质


[0001]本申请涉及计算机
,具体而言,本申请涉及一种数据查询方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]在现代数据库系统中,优化器是一个必不可少的重要组件。因为数据库执行的结构化查询语言(Structured Query Language,SQL)查询是声明式的,SQL指令只描述需要获取什么数据,并不描述具体以何种方式获取数据。通常,查询数据时,数据库有不同的执行方式来进行查询,以获取目标数据,因此,数据库内部需要依赖优化器来选择其中哪种方式是最高效的。
[0003]对于数据库的使用者来说,优化器是一个黑盒,优化器无法向使用者提供内部实现细节,因此,开发人员难以获知优化细节,例如,难以获知每种方式的实际执行步骤以及所操作的数据量等,导致无法评估优化器所选择的方式,从而难以确定最优方式,影响数据查询效率。

技术实现思路

[0004]本申请的目的旨在至少能解决上述的技术缺陷之一,特别是无法确定查询数据的最优查询方式的技术缺陷。
[0005]根据本申请的一个方面,提供了一种数据查询方法,该方法包括:
[0006]接收查询目标数据的原始查询语句,确定所述原始查询语句对应的至少一种查询拓扑关系;
[0007]对所述查询拓扑关系进行解析处理,得到所述查询拓扑关系对应的查询子操作,并确定所述查询子操作对应的子操作语句;
[0008]根据所述子操作语句,确定所述查询子操作所操作的第一数据量;/>[0009]根据所述第一数据量,确定查询所述目标数据的目标查询拓扑关系。
[0010]可选的,所述对所述查询拓扑关系进行解析处理,得到所述查询拓扑关系对应的查询子操作之后,所述方法还包括:
[0011]获取所述查询子操作对应的估算数据量;其中,所述估算数据量包括所述查询子操作所操作的数据量的估计值;
[0012]根据所述估算数据量及所述第一数据量,确定估计准确度。
[0013]可选的,所述获取所述查询子操作对应的估算数据量,包括:
[0014]通过查询接口以及预设查询语句,获取所述查询子操作对应的估算数据量。
[0015]可选的,所述查询拓扑关系对应的至少两个所述查询子操作,
[0016]所述确定所述查询子操作对应的子操作语句,包括:
[0017]确定所述查询子操作的操作顺序,确定与所述操作顺序对应的转换模板;
[0018]基于所述转换模板中查询操作与操作语句的对应关系,生成所述子操作语句。
[0019]可选的,所述方法还包括:
[0020]在所述操作顺序与所述转换模板指示的顺序不一致的情况下,将至少两个所述查询子操作进行合并处理。
[0021]可选的,根据所述子操作语句确定所述查询子操作对应的第一数据量,包括:
[0022]通过所述子操作语句,对数据库进行查询,得到所述第一数据量。
[0023]可选的,所述估算数据量包括所述查询子操作所操作的估算数据行数;
[0024]所述第一数据量包括所述查询子操作所操作的实际数据行数。
[0025]根据本申请的另一个方面,提供了一种数据查询装置,该装置包括:
[0026]接收模块,用于通过接收查询目标数据的原始查询语句,确定所述原始查询语句对应的至少一种查询拓扑关系;
[0027]生成模块,用于对所述查询拓扑关系进行解析处理,得到所述查询拓扑关系对应的查询子操作,并确定所述查询子操作对应的子操作语句;
[0028]第一确定模块,用于根据所述子操作语句,确定所述查询子操作所操作的第一数据量;
[0029]第二确定模块,用于根据所述第一数据量,确定查询所述目标数据的目标查询拓扑关系。
[0030]根据本申请的另一个方面,提供了一种电子设备,该电子设备包括:
[0031]存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现本申请的第一方面任一项所述的数据查询方法的步骤。
[0032]例如,本申请的第三方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
[0033]存储器用于存放至少一可执行指令,可执行指令使处理器执行如本申请的第一方面所示的数据查询方法对应的操作。
[0034]根据本申请的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现本申请的第一方面任一项所述的数据查询方法的步骤。
[0035]例如,本申请实施例的第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面所示的数据查询方法。
[0036]根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面的各种可选实现方式中提供的方法。
[0037]本申请提供的技术方案带来的有益效果是:
[0038]本申请实施例中,通过接收查询目标数据的原始查询语句,确定所述原始查询语句对应的至少一种查询拓扑关系;对所述查询拓扑关系进行解析处理,得到所述查询拓扑关系对应的查询子操作,并确定所述查询子操作对应的子操作语句;根据所述子操作语句,确定所述查询子操作所操作的第一数据量;根据所述第一数据量,确定查询所述目标数据的目标查询拓扑关系。这样,可以在原始查询语句对应的多种查询拓扑关系中,选择优选的
目标查询拓扑关系,例如,可以选择查询目标数据时所操作的数据量最少的查询拓扑关系作为目标查询拓扑关系,通过目标查询拓扑关系查询目标数据,可以实现节约查询时间,提高查询效率。
附图说明
[0039]为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
[0040]图1为本申请实施例提供的一种数据查询方法的流程示意图之一;
[0041]图2为本申请实施例提供的一种数据查询方法的应用场景示意图之一;
[0042]图3为本申请实施例提供的一种数据查询方法的应用场景示意图之二;
[0043]图4为本申请实施例提供的一种数据查询方法的应用场景示意图之三;
[0044]图5为本申请实施例提供的一种数据查询方法的应用场景示意图之四;
[0045]图6为本申请实施例提供的一种数据查询方法的应用场景示意图之五;
[0046]图7为本申请实施例提供的一种数据查询方法的应用场景示意图之六;
[0047]图8为本申请实施例提供的一种数据查询方法的流程示意图之二;
[0048]图9为本申请实施例提供的一种数据本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据查询方法,其特征在于,包括:接收查询目标数据的原始查询语句,确定所述原始查询语句对应的至少一种查询拓扑关系;对所述查询拓扑关系进行解析处理,得到所述查询拓扑关系对应的查询子操作,并确定所述查询子操作对应的子操作语句;根据所述子操作语句,确定所述查询子操作所操作的第一数据量;根据所述第一数据量,确定查询所述目标数据的目标查询拓扑关系。2.根据权利要求1所述的数据查询方法,其特征在于,所述对所述查询拓扑关系进行解析处理,得到所述查询拓扑关系对应的查询子操作之后,所述方法还包括:获取所述查询子操作对应的估算数据量;其中,所述估算数据量包括所述查询子操作所操作的数据量的估计值;根据所述估算数据量及所述第一数据量,确定估计准确度。3.根据权利要求2所述的数据查询方法,其特征在于,所述获取所述查询子操作对应的估算数据量,包括:通过查询接口以及预设查询语句,获取所述查询子操作对应的估算数据量。4.根据权利要求1所述的数据查询方法,其特征在于,所述查询拓扑关系对应至少两个所述查询子操作,所述确定所述查询子操作对应的子操作语句,包括:确定所述查询子操作的操作顺序,确定与所述操作顺序对应的转换模板;基于所述转换模板中查询操作与操作语句的对应关系,生成所述子操作语句。5.根据权利要求4所述的数据查询方法,其特征在于,所述方法还包括:在所述操作顺序与所述转换模板指示的顺序不一致的情况下,将至...

【专利技术属性】
技术研发人员:周琨钦张原嘉鄢程鹏刘奇黄东旭崔秋
申请(专利权)人:平凯星辰北京科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1