本发明涉及数据查询,尤其涉及一种数据查询方法、装置、设备、介质和计算机程序产品。
背景技术:
1、在查询语句中,会存在常量表达式,常量表达式例如date‘2010-10-23’+12。
2、用户可以通过常量表达式对查询语句进行了解,但常量表达式对数据库的运行无特殊意义,反而占据了查询语句对应的查询树的节点。在基于查询树进行数据查询时,需要耗费资源对常量表达式的节点进行遍历以及计算,导致数据查询时间过长,数据的查询效率降低。
技术实现思路
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、所述处理器执行存储器存储的计算机执行指令,使得数据查询设备执行如上所述的数据查询方法。
31、另一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的数据查询方法。
32、另一方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上所述的数据查询方法。
33、本发明提供的数据查询方法、装置、设备、介质和计算机程序产品,获取查询语句对应的初始查询树,并初始查询树上确定包括常量表达式的节点,确定节点对应的常量表达式的常量参数,并将节点的常量表达式替换为常量参数得到目标查询树,从而通过目标查询树在数据库中进行数据查询。本发明中,在基于查询树查询数据之前,将查询数据上的常量表达式替换为对应的常量参数,当通过查询树进行数据查询数据,无需对查询树上的常量表达式进行计算,减少了数据查询所需的时长,提高了数据查询效率。
1.一种数据查询方法,其特征在于,包括:
2.根据权利要求1所述的数据查询方法,其特征在于,所述在所述初始查询树上确定第一节点的步骤包括:
3.根据权利要求1所述的数据查询方法,其特征在于,所述将所述第一节点对应的常量表达式替换为对应的常量参数,得到目标查询树的步骤包括:
4.根据权利要求3所述的数据查询方法,其特征在于,所述在所述初始查询树上确定第一节点的步骤包括:
5.根据权利要求1所述的数据查询方法,其特征在于,所述获取查询语句对应的初始查询树的步骤包括:
6.根据权利要求5所述的数据查询方法,其特征在于,所述对所述语法树进行语义转换,得到所述查询语句对应的初始查询树的步骤包括:
7.一种数据查询装置,其特征在于,包括:
8.一种数据查询设备,其特征在于,包括:存储器和处理器;
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至6任一项所述的数据查询方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至6任一项所述的数据查询方法。