数据查询方法、装置、计算机设备和存储介质与流程

文档序号:32742134发布日期:2022-12-30 19:32阅读:27来源:国知局
数据查询方法、装置、计算机设备和存储介质与流程

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.判断所述历史使用记录中是否存在指定存储路径;
34.若存在指定存储路径,则判断所述指定存储路径的通讯状态是否满足数据传输需求;
35.若所述指定存储路径的通讯状态满足数据传输需求,则根据所述指定存储路径,将所述过滤后的查询结果返回至用户客户端。
36.本技术还提供了一种数据查询装置,包括:
37.第一获取模块,用于获取用户输入的查询语句;
38.查询模块,用于根据所述查询语句从指定数据库进行数据查询,得到查询结果;
39.第一判断模块,用于判断所述查询语句是否携带预设关键字;
40.调用模块,用于若所述查询语句携带预设关键字,则调用解析器解析所述预设关键字,得到所述预设关键字对应的过滤指令;
41.过滤模块,用于通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果。
42.本技术还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
43.本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
44.本技术通过在平台的查询框架预先定义关键字,将用户不同的使用需求通过在平台自定义设定关键字的方式实现,然后数据查询系统通过解析关键字对应的过滤功能,并映射为关键字对应的过滤指令,当用户发起查询时,判断查询语句中是否包括预设的关键字,包括预设的关键字则按照该关键字对应的过滤指令对查询结果进行过滤,得到用户需求的查询结果,并返回至用户终端,实现根据用户的使用需求返回满足业务需求的精准查询结果,无需再次筛选加工或排序,提高数据查询的便捷性。
附图说明
45.图1本技术一实施例的数据查询方法流程示意图;
46.图2本技术一实施例的数据查询装置的结构示意图;
47.图3本技术一实施例的计算机设备内部结构示意图。
具体实施方式
48.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
49.参照图1,本技术一实施例的一种数据查询方法,包括:
50.s1:获取用户输入的查询语句;
51.s2:根据所述查询语句从指定数据库进行数据查询,得到查询结果;
52.s3:判断所述查询语句是否携带预设关键字;
53.s4:若所述查询语句携带预设关键字,则调用解析器解析所述预设关键字,得到所述预设关键字对应的过滤指令;
54.s5:通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果。
55.本技术实施例中,用户输入的查询语句不仅用来从数据库中获取查询数据,同时也通过查询语句中携带的对查询结果进行过滤处理的标志,对获取的查询结果进行再过滤,以便反馈到用户端的数据可直接满足用户需求。通过关键字识别,判断用户输入的查询语句中是否携带了预设关键字,如果携带了预设关键字,则将预设关键字发送至解析器,解析器根据预设关键字与过滤指令的映射关系,解析关键字对应的过滤指令。然后根据过滤指令对查询数据进行过滤,以去除冗余的数据,得到用户需求的查询结果并返回。上述预设
关键字包括但不限于“set null”、“set only”、“set returnasarray”等。“set null”与过滤指令“将对应字段的数据设置为空”相对应,“set only”与过滤指令“只返回对应字段的数据”相对应,“set returnasarray”与过滤指令“将对应字段的数据设置为数组”相对应。
56.本技术通过在平台的查询框架预先定义关键字,将用户不同的使用需求通过在平台自定义设定关键字的方式实现,然后系统通过解析关键字对应的过滤功能,并映射为关键字对应的操作指令,当用户发起查询指令时,判断指令中是预设的关键字,有则按照关键字对应的过滤功能对查询结果进行过滤,或按照操作指令对从数据库查询出的数据进行转换,得到用户需求的查询结果,并返回至用户终端,实现根据用户的使用需求返回满足业务需求的精准查询结果,无需再次筛选或排序,提高数据查询的便捷性。
57.进一步地,通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果的步骤s5,包括:
58.s51:判断所述查询语句是否包括多个所述预设关键字一一对应的过滤指令;
59.s52:若所述查询语句包括多个所述预设关键字一一对应的过滤指令,则识别多个所述预设关键字一一对应的过滤指令之间的逻辑运算符;
60.s53:按照所述逻辑运算符对多个所述预设关键字一一对应的过滤指令的调用次序进行排序,形成指令顺序;
61.s54:按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果。
62.本技术实施例中,各预设关键字可同时出现在用户的查询语句中,对查询结果的不同字段对应的数据进行分别处理;也可单独使用其中一种预设关键字,对查询结果进行某种指定的过滤,预设关键字对应的过滤过程无论在多种预设关键词连用的场景,还是使用单个预设关键词,过滤过程的原理相同,不同之处在于多种预设关键词连用的场景是将单个预设关键此的过滤结果,依次按照多种预设关键词之间的逻辑运算符进行二次拼接形成最终的查询结果。上述用户的查询语句通过预查询的信息关键词和查询条件关键词组合形成。上述查询条件关键词即由上述的预设关键字组成。当用户的查询语句中同时出现多个预设关键字时,可通过逻辑运算符进行连接,以通过逻辑运算符区别各预设关键字对应的过滤指令的运行前后次序。上述逻辑运算符包括但不限于“or”、“and”,“or”表示并列执行,“and”表示依次执行。用户选择预设关键字时,会通过可选或不可选的方式进行限定,以避免出现逻辑错误。比如对查询结果中的第一个字段设定了预设关键字为“set null”,则不可对第一个字段再设定预设关键字“set returnasarray”。再比如,用户对查询结果中的第一个字段设定了预设关键字为“set only”,则还可对第一个字段再设定预设关键字“set returnasarray”。通过逻辑运算符实现过滤指令的逻辑执行,更能扩大满足用户的使用需求。
63.进一步地,按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤s54,包括:
64.s511:判断所述查询语句是否包括第一指令,其中,所述第一指令包含于所有所述预设关键字一一对应的过滤指令中,所述第一指令为将所述查询结果中第一指定字段对应的数据设置为空的指令,所述第一指定字段为所述查询结果中的任一字段;
65.s512:若所述查询语句包括第一指令,则根据所述第一指令,将所述查询结果中第
一指定字段对应的数据设置为空;
66.s513:按照所述查询结果中所有字段的的排序,将所述查询结果中除所述第一指定字段之外的排序剩余字段,组合成经所述第一指令过滤后的第一查询结果,所述第一查询结果包含于所述过滤后的查询结果中。
67.本技术实施例中,各预设关键字对应的过滤指令不同,当预设关键字与查询结果中的某个特定字段相连时,则表明对该特定字段执行预设关键字对应的过滤指令。每个预设关键字可单独对某个特定字段使用,或对两个或两个以上的字段使用。本技术实施例以关键字“set null”为例,详细说明。“set null”与过滤指令“将对应字段的数据设置为空”相对应,“set null”可与查询结果中的一个字段关联连接,或以数组的形式表示,比如“第一指定字段:“set null”表示第一指定字段与set null关联连接,即对第一指定字段执行数据设置为空的过滤操作。举例地,marketdata数据由marketprice=1.2,companyname=pas,exchangename=sh组成。如果select*frommarketdata set null exchangename,则过滤后的查询结果为:marketprice=1.2,companyname=pas,exchangename=null。“set null”可与查询结果中的一个以上的字段关联连接,但要保证不覆盖查询结果的所有字段,否则无意义。举例地,select*frommarketdata set null companyname,set null exchangename,则过滤后的查询结果为:marketprice=1.2,companyname=null,exchangename=null。
68.进一步地,按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤s54,包括:
69.s5101:判断所述查询语句是否包括第二指令,其中,所述第二指令包含于所有所述预设关键字一一对应的过滤指令中,所述第二指令符号为只返回所述查询结果中第二指定字段对应数据的指令;
70.s5102:若所述查询语句包括第二指令,则根据所述第二指令,确定所述查询结果中第二指定字段对应的数据;
71.s5103:将所述第二指定字段对应的数据,作为经所述第二指令过滤后的第二查询结果,所述第二查询结果包含于所述过滤后的查询结果中。
72.本技术实施例,以预设关键字“set only”为例,进行详细说明。“set only”与过滤指令“只返回对应字段的数据”相对应,故“set only”仅用于查询结果中的某一个字段,不可多个字段同时使用。举例地,用户的查询语句为“select*frommarketdatasetonly companyname”,则过滤后的查询数据则返回为:marketprice=null,companyname=pas,exchangename=null。
73.进一步地,按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤s54,包括:
74.s5111:判断所述查询语句是否包括第三指令,其中,所述第三指令包含于所有所述预设关键字一一对应的过滤指令中,所述第三指令为将所述查询结果中的数据格式转化为数组的指令;
75.s5112:若所述查询语句包括第三指令符号,则根据所述第三指令,将所述查询结果中各字段对应的数据分别转换为数组;
76.s5113:将各字段对应的数组按照所述查询结果中各字段的排列次序组成数组组
合;
77.s5114:将所述数组组合,作为经所述第三指令过滤后的第三查询结果,所述第三查询结果包含于所述过滤后的查询结果中。
78.本技术实施例以预设关键字“set returnasarray”为例,详细说明。“set returnasarray”与过滤指令“将对应字段的数据设置为数组”相对应,是对查询结果的数据格式的一种限定,可与上述的“set only”并存使用,包括对同一字段或不同字段的数据限定。也可与上述的“set null”并存使用,包括对不同字段的数据限定,但不可对同一字段同时使用,否则无意义。
79.进一步地,所述获取用户输入的查询语句的步骤s1之前,包括:
80.s11:获取查询框架功能部署的脚本文件,其中,所述脚本文件包括解析所述预设关键字解析器,以及各所述预设关键字与过滤功能的映射关系;
81.s12:通过运行所述脚本文件在所述查询框架上部署所述预设关键字解析器。
82.本技术实施例的查询框架,通过部署脚本部署了解析器,比如sql解析器,且在sql解析器中预置了预设关键字与过滤指令的一一映射关系。包括但不限于“set null”与过滤指令“将对应字段的数据设置为空”相对应,“set only”与过滤指令“只返回对应字段的数据”相对应,“set returnasarray”与过滤指令“将对应字段的数据设置为数组”相对应。举例地,用户的查询语句为“select*frommarketdata return as array”,则过滤后的返回数据为:[marketprice=1.2,companyname=pas,exchangename=sh]。
[0083]
进一步地,通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果的步骤s5之后,包括:
[0084]
s501:获取用户的历史使用记录;
[0085]
s502:判断所述历史使用记录中是否存在指定存储路径;
[0086]
s503:若存在指定存储路径,则判断所述指定存储路径的通讯状态是否满足数据传输需求;
[0087]
s504:若所述指定存储路径的通讯状态满足数据传输需求,则根据所述指定存储路径,将所述过滤后的查询结果返回至用户客户端。
[0088]
本技术不仅对查询结果进行了过滤设计,且对查询结果的返回方式进行限定,以更满足用户查询数据的需求。比如,本技术实施例的查询框架可获取用户对应账号的数据查询的历史记录,并分析获取了有效数据。上述有效数据包括用户常用的存储路径、用户上一次选用的查询条件关键词的设置记录、用于信息提醒的联系接口等,为用户形成个性化的查询界面和格式,方便用户根据各自的使用习惯,形成个性化的操作界面,且方便用户直接调用查询框架针对当前用户形成的查询模板进行快速查询。上述查询模板通过获取上述历史记录中的有效数据形成。
[0089]
参照图2,本技术一实施例的数据查询装置,包括:
[0090]
第一获取模块1,用于获取用户输入的查询语句;
[0091]
查询模块2,用于根据所述查询语句从指定数据库进行数据查询,得到查询结果;
[0092]
第一判断模块3,用于判断所述查询语句是否携带预设关键字;
[0093]
调用模块4,用于若所述查询语句携带预设关键字,则调用解析器解析所述预设关键字,得到所述预设关键字对应的过滤指令;
[0094]
过滤模块5,用于通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果。
[0095]
本技术实施例的相关解释,适用方法对应部分的解释,不赘述。
[0096]
进一步地,过滤模块5,包括:
[0097]
第一判断单元,用于判断所述查询语句是否包括多个所述预设关键字一一对应的过滤指令;
[0098]
识别单元,用于若所述查询语句包括多个所述预设关键字一一对应的过滤指令,则识别多个所述预设关键字一一对应的过滤指令之间的逻辑运算符;排序单元,用于按照所述逻辑运算符对多个所述预设关键字一一对应的过滤指令的调用次序进行排序,形成指令顺序;
[0099]
过滤单元,用于按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果。
[0100]
进一步地,过滤单元,包括:
[0101]
第一判断子单元,用于断所述查询语句是否包括第一指令,其中,所述第一指令包含于所有所述预设关键字一一对应的过滤指令中,所述第一指令为将所述查询结果中第一指定字段对应的数据设置为空的指令,所述第一指定字段为所述查询结果中的任一字段;
[0102]
设置子单元,用于若所述查询语句包括第一指令,则根据所述第一指令,将所述查询结果中第一指定字段对应的数据设置为空;
[0103]
组合子单元,用于按照所述查询结果中所有字段的的排序,将所述查询结果中除所述第一指定字段之外的排序剩余字段,组合成经所述第一指令过滤后的第一查询结果,所述第一查询结果包含于所述过滤后的查询结果中。
[0104]
进一步地,过滤单元,包括:
[0105]
第二判断子单元,用于判断所述查询语句是否包括第二指令,其中,所述第二指令包含于所有所述预设关键字一一对应的过滤指令中,所述第二指令符号为只返回所述查询结果中第二指定字段对应数据的指令;
[0106]
确定子单元,用于若所述查询语句包括第二指令,则根据所述第二指令,确定所述查询结果中第二指定字段对应的数据;
[0107]
第一作为子单元,用于将所述第二指定字段对应的数据,作为经所述第二指令过滤后的第二查询结果,所述第二查询结果包含于所述过滤后的查询结果中。
[0108]
进一步地,过滤单元,包括:
[0109]
第三判断子单元,用于判断所述查询语句是否包括第三指令,其中,所述第三指令包含于所有所述预设关键字一一对应的过滤指令中,所述第三指令为将所述查询结果中的数据格式转化为数组的指令;
[0110]
转换子单元,用于若所述查询语句包括第三指令符号,则根据所述第三指令,将所述查询结果中各字段对应的数据分别转换为数组;
[0111]
组成子单元,用于将各字段对应的数组按照所述查询结果中各字段的排列次序组成数组组合;
[0112]
第二作为子单元,用于将所述数组组合,作为经所述第三指令过滤后的第三查询结果,所述第三查询结果包含于所述过滤后的查询结果中。
[0113]
进一步地,数据查询装置,包括:
[0114]
第二获取模块,用于获取查询框架功能部署的脚本文件,其中,所述脚本文件包括解析所述预设关键字解析器,以及各所述预设关键字与过滤功能的映射关系;
[0115]
部署模块,用于通过运行所述脚本文件在所述查询框架上部署所述预设关键字解析器。
[0116]
进一步地,数据查询装置,包括:
[0117]
第二获取模块,用于获取用户的历史使用记录;
[0118]
第二判断模块,用于判断所述历史使用记录中是否存在指定存储路径;
[0119]
第三判断模块,用于若所述历史使用记录中存在指定存储路径,则判断所述指定存储路径的通讯状态是否满足数据传输需求;
[0120]
返回模块,用于若所述指定存储路径的通讯状态满足数据传输需求,则根据所述指定存储路径,将所述过滤后的查询结果返回至用户客户端。
[0121]
参照图3,本技术实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据查询过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现数据查询方法。
[0122]
上述处理器执行上述数据查询方法,包括:获取用户输入的查询语句;根据所述查询语句从指定数据库进行数据查询,得到查询结果;判断所述查询语句是否携带预设关键字;若所述查询语句携带预设关键字,则调用解析器解析所述预设关键字,得到所述预设关键字对应的过滤指令;通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果。
[0123]
上述计算机设备,通过在平台的查询框架预先定义关键字,将用户不同的使用需求通过在平台自定义设定关键字的方式实现,然后数据查询系统通过解析关键字对应的过滤功能,并映射为关键字对应的过滤指令,当用户发起查询时,判断查询语句中是否包括预设的关键字,包括预设的关键字则按照该关键字对应的过滤指令对查询结果进行过滤,得到用户需求的查询结果,并返回至用户终端,实现根据用户的使用需求返回满足业务需求的精准查询结果,提高数据查询的便捷性。
[0124]
在一个实施例中,上述处理器通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括多个所述预设关键字一一对应的过滤指令;若所述查询语句包括多个所述预设关键字一一对应的过滤指令,则识别多个所述预设关键字一一对应的过滤指令之间的逻辑运算符;按照所述逻辑运算符对多个所述预设关键字一一对应的过滤指令的调用次序进行排序,形成指令顺序;按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果。
[0125]
在一个实施例中,上述处理器按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所
述查询语句是否包括第一指令,其中,所述第一指令包含于所有所述预设关键字一一对应的过滤指令中,所述第一指令为将所述查询结果中第一指定字段对应的数据设置为空的指令,所述第一指定字段为所述查询结果中的任一字段;若所述查询语句包括第一指令,则根据所述第一指令,将所述查询结果中第一指定字段对应的数据设置为空;按照所述查询结果中所有字段的的排序,将所述查询结果中除所述第一指定字段之外的排序剩余字段,组合成经所述第一指令过滤后的第一查询结果,所述第一查询结果包含于所述过滤后的查询结果中。
[0126]
在一个实施例中,上述处理器按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括第二指令,其中,所述第二指令包含于所有所述预设关键字一一对应的过滤指令中,所述第二指令符号为只返回所述查询结果中第二指定字段对应数据的指令;若所述查询语句包括第二指令,则根据所述第二指令,确定所述查询结果中第二指定字段对应的数据;将所述第二指定字段对应的数据,作为经所述第二指令过滤后的第二查询结果,所述第二查询结果包含于所述过滤后的查询结果中。
[0127]
在一个实施例中,上述处理器按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括第三指令,其中,所述第三指令包含于所有所述预设关键字一一对应的过滤指令中,所述第三指令为将所述查询结果中的数据格式转化为数组的指令;若所述查询语句包括第三指令符号,则根据所述第三指令,将所述查询结果中各字段对应的数据分别转换为数组;将各字段对应的数组按照所述查询结果中各字段的排列次序组成数组组合;将所述数组组合,作为经所述第三指令过滤后的第三查询结果,所述第三查询结果包含于所述过滤后的查询结果中。
[0128]
在一个实施例中,上述处理器获取用户输入的查询语句的步骤之前,包括:获取查询框架功能部署的脚本文件,其中,所述脚本文件包括解析所述预设关键字解析器,以及各所述预设关键字与过滤功能的映射关系;通过运行所述脚本文件在所述查询框架上部署所述预设关键字解析器。
[0129]
在一个实施例中,上述处理器通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果的步骤之后,包括:获取用户的历史使用记录;判断所述历史使用记录中是否存在指定存储路径;若所述历史使用记录中存在指定存储路径,则判断所述指定存储路径的通讯状态是否满足数据传输需求;若所述指定存储路径的通讯状态满足数据传输需求,则根据所述指定存储路径,将所述过滤后的查询结果返回至用户客户端。
[0130]
本领域技术人员可以理解,图3中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定。
[0131]
本技术一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现数据查询方法,包括:获取用户输入的查询语句;根据所述查询语句从指定数据库进行数据查询,得到查询结果;判断所述查询语句是否携带预设关键字;若所述查询语句携带预设关键字,则调用解析器解析所述预设关键字,得到所述预设关键字对应的过滤指令;通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果。
[0132]
上述计算机可读存储介质,通过在平台的查询框架预先定义关键字,将用户不同
的使用需求通过在平台自定义设定关键字的方式实现,然后数据查询系统通过解析关键字对应的过滤功能,并映射为关键字对应的过滤指令,当用户发起查询时,判断查询语句中是否包括预设的关键字,包括预设的关键字则按照该关键字对应的过滤指令对查询结果进行过滤,得到用户需求的查询结果,并返回至用户终端,实现根据用户的使用需求返回满足业务需求的精准查询结果,提高数据查询的便捷性。
[0133]
在一个实施例中,上述处理器通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括多个所述预设关键字一一对应的过滤指令;若所述查询语句包括多个所述预设关键字一一对应的过滤指令,则识别多个所述预设关键字一一对应的过滤指令之间的逻辑运算符;按照所述逻辑运算符对多个所述预设关键字一一对应的过滤指令的调用次序进行排序,形成指令顺序;按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果。
[0134]
在一个实施例中,上述处理器按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括第一指令,其中,所述第一指令包含于所有所述预设关键字一一对应的过滤指令中,所述第一指令为将所述查询结果中第一指定字段对应的数据设置为空的指令,所述第一指定字段为所述查询结果中的任一字段;若所述查询语句包括第一指令,则根据所述第一指令,将所述查询结果中第一指定字段对应的数据设置为空;按照所述查询结果中所有字段的的排序,将所述查询结果中除所述第一指定字段之外的排序剩余字段,组合成经所述第一指令过滤后的第一查询结果,所述第一查询结果包含于所述过滤后的查询结果中。
[0135]
在一个实施例中,上述处理器按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括第二指令,其中,所述第二指令包含于所有所述预设关键字一一对应的过滤指令中,所述第二指令符号为只返回所述查询结果中第二指定字段对应数据的指令;若所述查询语句包括第二指令,则根据所述第二指令,确定所述查询结果中第二指定字段对应的数据;将所述第二指定字段对应的数据,作为经所述第二指令过滤后的第二查询结果,所述第二查询结果包含于所述过滤后的查询结果中。
[0136]
在一个实施例中,上述处理器按照所述指令顺序依次调用各所述预设关键字分别对应的过滤指令,对所述查询结果进行过滤,得到过滤后的查询结果的步骤,包括:判断所述查询语句是否包括第三指令,其中,所述第三指令包含于所有所述预设关键字一一对应的过滤指令中,所述第三指令为将所述查询结果中的数据格式转化为数组的指令;若所述查询语句包括第三指令符号,则根据所述第三指令,将所述查询结果中各字段对应的数据分别转换为数组;将各字段对应的数组按照所述查询结果中各字段的排列次序组成数组组合;将所述数组组合,作为经所述第三指令过滤后的第三查询结果,所述第三查询结果包含于所述过滤后的查询结果中。
[0137]
在一个实施例中,上述处理器获取用户输入的查询语句的步骤之前,包括:获取查询框架功能部署的脚本文件,其中,所述脚本文件包括解析所述预设关键字解析器,以及各所述预设关键字与过滤功能的映射关系;通过运行所述脚本文件在所述查询框架上部署所
述预设关键字解析器。
[0138]
在一个实施例中,上述处理器通过所述过滤指令对所述查询结果进行过滤,得到过滤后的查询结果的步骤之后,包括:获取用户的历史使用记录;判断所述历史使用记录中是否存在指定存储路径;若存在指定存储路径,则判断所述指定存储路径的通讯状态是否满足数据传输需求;若所述指定存储路径的通讯状态满足数据传输需求,则根据所述指定存储路径,将所述过滤后的查询结果返回至用户客户端。
[0139]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双速据率sdram(ssrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0140]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
[0141]
以上所述仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1