本说明书实施例涉及计算机,特别涉及数据查询方法、查询表构建方法、计算设备和存储介质。
背景技术:
1、目前,在数据库中查询数据时,会存在需要利用两张或多张数据表来实现数据查询的情况;为了实现对数据的查询,通常可采用join算法对数据表中的数据进行连接,进行查询表的构建,获得查询表;进一步,基于查询表完成对待查询数据的查询。
2、但目前利用优化器选择查询表构建方法的方式不够准确,会导致查询表构建效率低,进而导致数据查询效率降低的问题。
3、因此,需要提供更快速或者更可靠的方案进行查询表构建方法的确定。
技术实现思路
1、有鉴于此,本说明书实施例提供了数据查询方法。本说明书一个或者多个实施例同时涉及数据查询装置,查询表构建方法,查询表构建装置,计算设备,计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
2、根据本说明书实施例的第一方面,提供了一种数据查询方法,包括:
3、获取查询语句,确定所述查询语句对应的至少两个数据表;
4、调用第一算子,对所述数据表进行分批处理,根据所述至少两个数据表中目标批次的数据,构建第一目标查询表,其中,所述目标批次为任一批次;
5、检测所述第一目标查询表的查询属性信息;
6、在所述查询属性信息满足切换条件的情况下,基于所述至少两个数据表中的剩余数据,构建第二目标查询表,其中,所述剩余数据是指除所述第一目标查询表所包含数据以外的数据;
7、获得基于所述第一目标查询表和所述第二目标查询表的数据查询结果。
8、根据本说明书实施例的第二方面,提供了一种数据查询装置,包括:
9、获取模块,被配置为获取查询语句,确定所述查询语句对应的至少两个数据表;
10、第一构建模块,被配置为调用第一算子,对所述数据表进行分批处理,根据所述至少两个数据表中目标批次的数据,构建第一目标查询表,其中,所述目标批次为任一批次;
11、检测模块,被配置为检测所述第一目标查询表的查询属性信息;
12、第二构建模块,被配置为在所述查询属性信息满足切换条件的情况下,基于所述至少两个数据表中的剩余数据,构建第二目标查询表,其中,所述剩余数据是指除所述第一目标查询表所包含数据以外的数据;
13、获得模块,被配置为获得基于所述第一目标查询表和所述第二目标查询表的数据查询结果。
14、根据本说明书实施例的第三方面,提供了一种查询表构建方法,包括:
15、获取查询语句,确定所述查询语句对应的至少两个数据表;
16、调用第一算子,对所述数据表进行分批处理,根据所述至少两个数据表中目标批次的数据,构建第一目标查询表,其中,所述目标批次为任一批次;
17、检测所述第一目标查询表的查询属性信息;
18、在所述查询属性信息满足切换条件的情况下,基于所述至少两个数据表中的剩余数据,构建第二目标查询表,其中,所述剩余数据是指除所述第一目标查询表所包含数据以外的数据。
19、根据本说明书实施例的第四方面,提供了一种查询表构建装置,包括:
20、获取模块,被配置为获取查询语句,确定所述查询语句对应的至少两个数据表;
21、第一构建模块,被配置为调用第一算子,对所述数据表进行分批处理,根据所述至少两个数据表中目标批次的数据,构建第一目标查询表,其中,所述目标批次为任一批次;
22、检测模块,被配置为检测所述第一目标查询表的查询属性信息;
23、第二构建模块,被配置为在所述查询属性信息满足切换条件的情况下,基于所述至少两个数据表中的剩余数据,构建第二目标查询表,其中,所述剩余数据是指除所述第一目标查询表所包含数据以外的数据。
24、根据本说明书实施例的第五方面,提供了一种计算设备,包括:
25、存储器和处理器;
26、所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述方法的步骤。
27、根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述方法的步骤。
28、根据本说明书实施例的第七方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述方法的步骤。
29、本说明书一个实施例实现了,获取查询语句,确定所述查询语句对应的至少两个数据表;调用第一算子,对所述数据表进行分批处理,根据所述至少两个数据表中目标批次的数据,构建第一目标查询表,其中,所述目标批次为任一批次;检测所述第一目标查询表的查询属性信息;在所述查询属性信息满足切换条件的情况下,基于所述至少两个数据表中的剩余数据,构建第二目标查询表,其中,所述剩余数据是指除所述第一目标查询表所包含数据以外的数据;获得基于所述第一目标查询表和所述第二目标查询表的数据查询结果。
30、通过基于查询语句构建第一目标查询表,从而实现基于查询语句对应的数据表构建用于数据查询的第一目标查询表;检测第一目标查询表对应的查询属性信息,在查询属性信息满足切换条件的情况下,基于至少两个数据表中的剩余数据构建第二目标查询表,即切换了生成查询表的方式,从而提升了生成查询表的效率;基于第一目标查询表和第二目标查询表获得所述查询语句对应的数据查询结果,避免因查询表构建方式的切换,导致生成的第一目标查询表的浪费,从而保证了数据查询的执行效率。
1.一种数据查询方法,包括:
2.如权利要求1所述的方法,基于所述至少两个数据表中的剩余数据,构建第二目标查询表,包括:
3.如权利要求2所述的方法,基于状态设置的结果以及所述至少两个数据表中的剩余数据,构建第二目标查询表,包括:
4.如权利要求3所述的方法,基于所述目标剩余数据,对所述共享哈希表进行数据填充,获得第二目标查询表,包括:
5.如权利要求4所述的方法,基于填充后的共享哈希表构建第二目标查询表,包括:
6.如权利要求2所述的方法,还包括:
7.如权利要求1所述的方法,所述查询属性信息包括查询表总数量、查询执行时长和目标连接数量中的至少一种,其中,所述目标连接数量是指查询单元和存储单元之间存在连接的数量。
8.如权利要求1所述的方法,构建第一目标查询表之后,还包括:
9.如权利要求1所述的方法,根据所述至少两个数据表中目标批次的数据,构建第一目标查询表,包括:
10.如权利要求1所述的方法,确定所述查询语句对应的至少两个数据表,包括:
11.如权利要求1所述的方法,所述切换条件包括如下至少一种:第一目标查询表的查询表总数量大于等于预设数量阈值、第一目标查询表的查询执行时长大于等于预设时长阈值。
12.一种查询表构建方法,包括:
13.一种计算设备,包括:
14.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至12任意一项所述方法的步骤。