掌桥专利:专业的专利平台
掌桥专利
首页

数据查询方法、装置和服务器

文献发布时间:2023-06-19 11:35:49


数据查询方法、装置和服务器

技术领域

本说明书属于大数据技术领域,尤其涉及数据查询方法、装置和服务器。

背景技术

在一些业务数据处理场景中,基于具体的业务处理需求,用户(例如,业务员等)常常需要对大量源表进行查询操作以获取相关数据。

而基于现有的数据查询方法,往往需要用户自己编写具体的查询语句,以进行具体的查询操作;在具体进行具体的查询操作时,还需要利用上述查询语句,对大量源表都进行检索、查询操作,才能最终找到需要查询的数据。

可见,基于现有的数据查询方法具体实施时,往往存在用户操作难度大,查询效率低的技术问题。

针对上述问题,目前尚未提出有效的解决方案。

发明内容

本说明书提供了一种数据查询方法、装置和服务器,以简化用户操作,高效地查询获取满足用户具体要求的目标数据,提高用户的使用体验。

本说明书提供了一种数据查询方法,包括:

接收查询请求;其中,所述查询请求至少携带有查询主题;

根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;

根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;

根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;

根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;

根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

在一些实施例中,所述预设的字段池包括:预设的类别型属性字段池,和/或,预设的数值型属性字段池。

在一些实施例中,所述与目标主题类型相关的属性字段包括:与目标主题类型相关的类别型属性字段,和/或,与目标主题类型相关的数值型属性字段。

在一些实施例中,根据所述目标字段池、所述目标条件池,获取目标字段,包括:

根据所述目标字段池、所述目标条件池,配置相应的选择界面;其中,所述选择界面包含有多个待选字段;

向用户展示所述选择界面;

接收并根据用户针对所述选择界面的选择操作,确定出用户选中的待选字段;并将用户选中的待选字段确定为所述目标字段。

在一些实施例中,所述目标字段池、所述目标条件池中还分别存储有字段之间的关联关系;

相应的,根据所述目标字段池、所述目标条件池,配置相应的选择界面,包括:

从目标字段池中筛选出第一层级属性字段;

根据字段之间的关联关系,从所述目标字段池中筛选出第二层级属性字段,并从所述目标条件池中筛选出相关联的待选关系字段;

根据预设的配置规则,利用所述第一层级属性字段、第二层级属性字段和待选关系字段,配置出所述选择界面。

在一些实施例中,根据所述目标字段池、所述目标条件池,获取目标字段,还包括:

向用户展示文本输入界面;

通过所述文本输入界面,接收用户输入的与数据查询相关的文本数据;

对所述文本数据进行分词处理,得到自定义文本字段;

通过语义匹配,从所述目标字段池和/或所述目标条件池中筛选出与所述自定义文本字段的语义近似度高于预设的近似度阈值的字段作为所述目标字段。

在一些实施例中,获取与目标字段相关的目标数据值,包括:

根据所述目标字段,生成关于目标字段的数据值设置界面;

向用户展示所述数据值设置界面;

通过所述数据值设置界面,获取与目标字段相关的目标数据值。

在一些实施例中,在接收查询请求之前,所述方法还包括:

获取历史查询记录;其中,所述历史查询记录包含有多条历史查询语句;

将所述多条历史查询语句划分为多个数据组;其中,所述多个数据组中的各个数据组分别与一种预设的主题类型对应;

根据数据组所包含的历史查询语句,构建与预设的主题类型对应的预设的字段池和预设的条件池。

在一些实施例中,根据数据组所包含的历史查询语句,构建与预设的主题类型对应的预设的字段池和预设的条件池,包括:

按照以下方式构建与当前主题类型对应的预设的字段池和预设的条件池:

从多个数据组中,确定出与当前主题类型对应的数据组,作为当前数据组;

从当前数据组所包含的历史查询语句中,提取出类别型属性字段、数值型属性字段,以及关系字段;

统计各个类别型属性字段的使用频率、各个数值型属性字段的使用频率,以及各个关系字段的使用频率;

筛选出使用频率符合要求的多个类别型属性字段,构建与当前主题类型对应的预设的类别型属性字段池;筛选出使用频率符合要求的多个数值型属性字段,构建与当前主题类型对应的预设的数值型属性字段池;筛选出使用频率符合要求的多个关系字段,构建与当前主题类型对应的预设的条件池。

在一些实施例中,在将所述多条历史查询语句划分为多个数据组之后,所述方法还包括:

根据所述历史查询记录,确定出各个数据组中的历史查询语句历史上查询过的预设的源表;

根据所述各个数据组中的历史查询语句历史上查询过的预设的源表,建立预设的主题类型与预设的源表之间的匹配关系。

在一些实施例中,所述预设的主题类型包括以下至少之一:客户主题、账户主题、合约主题、产品主题。

在一些实施例中,在根据所述目标查询语句,通过查询所述目标源表,以获取目标数据之后,所述方法还包括:

向用户展示所述目标数据。

本说明书还提供了一种数据查询装置,包括:

接收模块,用于接收查询请求;其中,所述查询请求至少携带有查询主题;

第一确定模块,用于根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;

第二确定模块,用于根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;

第一获取模块,用于根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;

生成模块,用于根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;

第二获取模块,用于根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

本说明书还提供了一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现以下步骤:接收查询请求;其中,所述查询请求至少携带有查询主题;根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

本说明书还提供了一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现以下步骤:接收查询请求;其中,所述查询请求至少携带有查询主题;根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

本说明书提供的数据查询方法、装置和服务器,具体实施前,可以先获取并根据历史查询记录构建与多个预设的主题类型分别对应的预设的字段池和预设的条件池,并建立预设的主题类型与预设的源表之间的匹配关系;具体实施时,可以先根据所接收到的查询请求中携带的查询主题,确定出相匹配的目标主题类型;再根据目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并且,还从多个预设的源表中,确定出与目标主题类型相匹配的目标源表;进一步,可以根据目标字段池、目标条件池,获取目标字段,以及与目标字段相关的目标数据值;并根据上述目标主题类型、目标字段、目标数据值,自动地拼接生成对应的目标查询语句;进而可以根据上述目标查询语句,只针对预设的源表中的目标源表进行查询操作,以获取需要查询的目标数据。从而可以有效地简化用户操作,降低用户的操作难度;使得用户可以高效、便捷地查询获取满足自己要求的目标数据,提高用户的使用体验。

附图说明

为了更清楚地说明本说明书实施例,下面将对实施例中所需要使用的附图作简单地介绍,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是应用本说明书实施例提供的数据查询方法的系统的结构组成的一个实施例的示意图;

图2是本说明书的一个实施例提供的数据查询方法的流程示意图;

图3是本说明书的一个实施例提供的服务器的结构组成示意图;

图4是本说明书的一个实施例提供的数据查询装置的结构组成示意图;

图5是在一个场景示例中,应用本说明书实施例提供的数据查询方法的一种实施例的示意图;

图6是在一个场景示例中,应用本说明书实施例提供的数据查询方法的一种实施例的示意图;

图7是在一个场景示例中,应用本说明书实施例提供的数据查询方法的一种实施例的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。

考虑到基于现有的数据查询方法,往往需要用户自己编写具体的查询语句,对用户的要求较高,用户操作时难度较大;并且,基于现有的数据查询方法还需要根据上述查询语句,对所有的源表都要依次进行检索、查询,使得查询过程耗时相对较长,查询效率相对较低。尤其在所涉及的源表数据量较大的情况下,上述问题更加明显。

针对产生上述问题的根本原因,本说明书考虑具体实施前,可以预先获取并根据历史查询记录,针对多个不同的预设的主题类型分别配置相应的预设的字段池和预设的条件池;其中,预设的字段池存储有与所对应的预设的主题类型相关的属性字段,预设的条件池存储有与所对应的预设的主题类型相关的关系字段。具体实施时,可以先根据用户发起的查询请求中所携带的查询主题,确定出目标主题类型;再根据目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池和目标条件池;同时,还可以根据目标主题类型,从多个预设的源表中确定出相匹配的目标源表;进一步,可以根据目标字段池、目标条件池,获取相应的目标字段,以及与目标字段相关的目标数据值;并根据上述目标主题类型、目标字段、目标数据值,自动生成对应的目标查询语句;进而可以根据上述目标查询语句,只对预设的源表中的目标源表进行针对性的数据查询,从而可以简化用户操作,使用户能够便捷、高效地查询得到满足具体要求的目标数据,提高用户的使用体验。

本说明书实施例提供一种数据查询方法,所述数据查询方法具体可以应用于包含有服务器和终端设备的系统中。具体可以参阅图1所示。上述终端设备与服务器可以通过有线或无线的方式相连,以进行具体的数据交互。

在本实施例中,所述服务器具体可以包括一种应用于业务数据处理平台一侧,能够实现数据传输、数据处理等功能的后台服务器。具体的,所述服务器例如可以为一个具有数据运算、存储功能以及网络交互功能的电子设备。或者,所述服务器也可以为运行于该电子设备中,为数据处理、存储和网络交互提供支持的软件程序。在本实施例中,并不具体限定所述服务器的数量。所述服务器具体可以为一个服务器,也可以为几个服务器,或者,由若干服务器形成的服务器集群。

在本实施例中,所述终端设备具体可以包括一种应用于用户一侧,能够实现数据采集、数据传输等功能的前端电子设备。具体的,所述终端设备例如可以为台式电脑、平板电脑、笔记本电脑、智能手机等。或者,所述终端设备也可以为能够运行于上述电子设备中的软件应用。例如,可以是在台式电脑上运行的某应用程序等。

在本实施例中,上述服务器还接入有多个预设的源表。

具体实施前,服务器可以获取历史查询记录;其中,上述历史查询记录包含有多个历史查询语句。

接着,服务器可以将上述多个历史查询语句划分为多个数据组;其中,每一个数据组对应一种预设的主题类型。

进一步,服务器可以根据各个数据组所包含的历史查询语句,构建出与各个预设的主题类型分别对应的预设的字段池和预设的条件池。其中,上述预设的字段池存储有与所对应的预设的主题类型相关的属性字段,上述预设的条件池存储有与所对应的预设的主题类型相关的关系字段。

同时,服务器还可以根据历史查询记录,确定出各个数据组所包含的历史查询语句历史上查询过的预设的源表,以建立预设的主题类型与预设的源表之间的匹配关系。

具体实施时,当用户想要查询某个具体源表中的某个具体数据时,用户不需要具备复杂的专业编程知识,只需要在终端设备上进行简单操作,以生成至少携带有查询主题的查询请求;并将该查询请求发送至服务器。

相应的,服务器接收上述查询请求,并响应该查询请求,从多个预设的主题类型中确定出与查询主题匹配的预设的主题类型,作为目标主题类型。

接着,服务器可以根据目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出与该目标主题类型匹配的预设的字段池、预设的条件池,作为目标字段池、目标条件池;同时,可以根据预设的主题类型与预设的源表之间的匹配关系,从多个预设的源表中,确定出与目标主题类型匹配的预设的源表,作为目标源表。

进一步,服务器可以根据目标字段池、目标条件池,通过与用户进行相应交互,以获取相应的目标字段,以及与目标字段相关的目标数据值。

进而,服务器可以根据目标主题类型、目标字段、目标数据值,基于预设的拼接规则,通过拼接组合,以自动生成目标查询语句。

然后,服务器可以根据上述目标查询语句,只针对预设的源表中的目标源表进行查询操作,以得到对应的目标数据;并将所查询到的目标数据反馈给终端设备。

相应的,终端设备接收目标数据;并向用户展示上述目标数据。

通过上述实施例,可以有效地简化用户操作,自动生成对应的目标查询语句;同时,在根据目标查询语句进行具体查询时,不用对所有源表不作区分地进行统一查询,而只需要对与目标主题类型匹配的目标源表进行针对性查询,从而可以有效地降低查询过程的数据处理量,缩短查询耗时,提高整体的查询效率,高效、便捷地查询出满足用具体要求的目标数据。

参阅图2所示,本说明书实施例提供了一种数据查询方法。其中,该方法具体应用于服务器一侧。具体实施时,该方法可以包括以下内容。

S201:接收查询请求;其中,所述查询请求至少携带有查询主题。

在一些实施例中,用户不需要具备专业的编程知识,可以先根据引导,结合自己具体的查询需求,通过在终端设备等进行较为简单的设置操作,使用自然语言等非编程语言设置具体的查询主题;并通过操作指示终端设备生成对应的查询请求。其中,上述查询请求至少可以携带有用户设置的查询主题。

进一步,终端设备可以响应用户操作,将上述查询请求通过有线或无线的方式,发送至服务器。相应的,服务器接收上述查询请求。

S202:根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型。

在一些实施例中,服务器可以先通过对查询请求进行数据解析,提取出查询请求中携带的查询主题。再通过语义匹配,从多个预设的主题类型中,确定出基于语义层面,与查询主题语义近似的预设的主题类型,作为目标主题类型。其中,上述预设的主题类型可以是预先根据历史查询记录得到的。关于预设的主题类型的确定方式,后续将另作说明。

在一些实施例中,对应不同的应用场景,上述预设的主题类型可以包括多种不同的主题类型。下面仅以银行业务数据处理场景为例进行具体说明。

在一些实施例中,上述预设的主题类型具体可以包括以下至少之一:客户主题、账户主题、合约主题、产品主题等等。当然,需要说明的是,上述所列举的预设的主题类型只是一种示意性说明。具体实施时,根据具体情况和处理需求,针对银行业务数据处理场景,上述预设的主题类型进一步还可以包括:员工主题、数据统计主题、风险预测主题等等。对此,本说明书不作限定。

S203:根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段。

在一些实施例中,上述预设的字段池、预设的条件池分别与一种预设的主题类型对应。具体的,每一个预设的字段池可以存储有多个与所对应的预设的主题类型相关的属性字段,每一个预设的条件池可以存储有多个与所对应的预设的主题类型相关的关系字段。其中,上述预设的字段池、预设的条件池可以是预先根据历史查询记录得到的。关于预设的字段池、预设的条件池的确定方式,后续将另作说明。

具体的,上述关系字段具体可以包括以下所列举的字段中的一种或多种:和、与、或;大于、等于、小于、大于等于、小于等于等等。当然,上述所列举的关系字段只是一种示意性说明。具体实施时,根据具体的应用场景和处理需求,还可以包含有其他类型的关系字段。对此,本说明书不作限定。

上述预设的源表具体可以根据服务器所持有的业务数据,或者所接入的数据库中的数据汇总得到。其中,每一个预设的源表中可以记载有大量数据信息。对应不同的应用场景,上述预设的源表可以包括多种不同类型的数据表。

具体的,以银行业务数据处理场景为例,上述预设的源表可以包括客户的基本信息表、客户的标签信息表、客户的效益类信息表、客户的持有产品信息表等等。其中,上述客户的基本信息表具体可以记载有各个客户的性别、生日、住址、电话等数据信息。上述客户的标签信息表具体可以记载有各个客户的潜力客户标签、私人银行客户标签、大额消费客户标签等数据信息。上述客户的效益类信息表具体可以记载有客户的综合贡献度、客户的产品覆盖度、客户的综合积分等数据信息。上述客户的持有产品信息表具体可以记载有客户所持有的基金产品的产品编号、客户所持有的基金产品的交易记录、客户所持有的产品的月余额数据等等。当然,上述所列举的预设的源表只是一种示意性说明。具体实施时,根据具体情况和处理需求,上述预设的源表还可以包括其他类型、其他内容的数据表。对此,本说明书不作限定。

在一些实施例中,具体实施,服务器可以检索多个预设的字段池、多个预设的条件池,找到与目标主题类型匹配对应的预设的字段池,作为目标字段池;找到与目标主题类型匹配对应的预设的条件池,作为目标条件池。

其中,上述目标字段池可以存储有多个与目标主题类型相关的属性字段,上述目标条件池可以存储有多个与目标主题类型相关的关系字段。

同时,服务器还可以基于预先确定出的预设的主题类型与预设的源表之间的匹配关系,检索多个预设的源表,找到与目标主题类型匹配对应的预设的源表,作为目标源表。其中,上述目标源表中较大概率记载有用户想要查询得到的数据信息。

这样后续服务器可以只对目标源表进行针对性的查询操作,而不需要像现有方法那样对所有预设的源表不作区分统一进行查询操作,从而可以有效地减少后续查询过程所涉及的数据处理量,缩短查询耗时。

在一些实施例中,上述预设的字段池进一步可以包括:预设的类别型属性字段池,和/或,预设的数值型属性字段池。

其中,上述预设的类别型属性字段池具体可以存储有使用文本型数据描述的类别型属性字段。例如,客户的性别、客户的住址、客户的职业等等。

上述预设的数值型属性字段池具体可以存储有使用数值型数据描述的数值型属性字段。例如,客户的综合积分、客户的资金余额、客户的月收益等等。

相应的,上述与目标主题类型相关的属性字段具体可以包括:与目标主题类型相关的类别型属性字段,和/或,与目标主题类型相关的数值型属性字段。

S204:根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值。

在一些实施例中,上述目标字段具体可以理解为用于描述用户的具体查询需求的字段。具体的,例如,上述目标字段可以是用于描述需要查询的数据的字段,也可以是用于描述具体查询方式的字段等。

上述目标数据值具体可以理解为用于限定目标字段的具体内容的参数值。具体的,例如,上述目标数据值可以是用户指示的需要查询的数据的具体编号为:NO.01212,也可以是用户设置的查询范围为:[50,55]等。

在一些实施例中,具体实施时,服务器可以根据所确定出的上述目标字段池、目标条件池,与用户进行一定交互,以确定并获取用户指示的目标字段,以及与目标字段相关的目标数据值。

在一些实施例中,上述根据所述目标字段池、所述目标条件池,获取目标字段,具体实施时,可以包括以下内容:

S1:根据所述目标字段池、所述目标条件池,配置相应的选择界面;其中,所述选择界面包含有多个待选字段;

S2:向用户展示所述选择界面;

S3:接收并根据用户针对所述选择界面的选择操作,确定出用户选中的待选字段;并将用户选中的待选字段确定为所述目标字段。

在本实施例中,具体实施时,服务器可以先将目标字段池、目标条件池中所存储的字段作为待选字段,配置对应的选择界中。

再通过终端设备向用户展示该选择界面。例如,可以通过下拉框等方式向用户展示出包含有多个供用户选择的待选字段。

进而可以接收并根据用户在上述选择界面中选择操作,确定出用户选中的待选择字段,作为所述目标字段。

在一些实施例中,针对较为复杂的应用场景,所述目标字段池、所述目标条件池中还可以分别存储有字段之间的关联关系。其中,上述字段之间的关联关系具体可以是不同字段之间的层级关系,也可以是不同字段之间的类型关系,还可以是不同字段之间的因果关系等。

相应的,上述根据所述目标字段池、所述目标条件池,配置相应的选择界面,具体实施时,可以包括:先从目标字段池中筛选出第一层级属性字段;再根据字段之间的关联关系,从所述目标字段池中筛选出第二层级属性字段,并从所述目标条件池中筛选出相关联的待选关系字段;然后根据预设的配置规则,利用所述第一层级属性字段、第二层级属性字段和待选关系字段,配置出所述选择界面。

具体的,例如,上述第一层级属性字段可以包括:“省份”、“直辖市”两个字段。相应的,上述第二层级属性字段可以包括:“市区”等。上述待选关系字段具体可以是用于描述查询时上述两个第一层级属性字段之间的并列关系的字段:“和”等。

这样生成并展示给用户的选择界面对用户更加友好,对用户而言,所展示的待选字段的逻辑更加清晰,更易于理解。从而可以使得用户更加高效、简单地在上述选择界面中进行相应操作,选出作为目标字段的待选字段。

在一些实施例中,针对更加复杂的应用场景,在按照上述方式确定出第二层级属性字段后,还可以根据字段之间的关联关系,基于第二层级属性字段进一步确定出第三层级属性字段,以及相应的待选关系字段。以此类推,还可以确定出第四层级属性字段,以及相应的待选关系字段等等。进而可以根据不同字段之间的关联关系,组合上述多个不同字段,生成更加复杂、信息更多,但用户仍然能够较轻松地理解、处理的选择界面。

在一些实施例中,上述根据所述目标字段池、所述目标条件池,获取目标字段,具体实施时,还可以包括以下内容:

S1:向用户展示文本输入界面;

S2:通过所述文本输入界面,接收用户输入的与数据查询相关的文本数据;

S3:对所述文本数据进行分词处理,得到自定义文本字段;

S4:通过语义匹配,从所述目标字段池和/或所述目标条件池中筛选出与所述自定义文本字段的语义近似度高于预设的近似度阈值的字段作为所述目标字段。

在本实施例中,可以通过语义匹配从目标字段池和/或目标条件池所存储的字段中自动地找到与基于用户的文本数据所得到的自定义文本字段最接近的字段作为目标字段。

通过上述实施例,可以支持用户更加自由地根据具体情况,以自定义文本数据的方式描述出查询需求。

在一些实施例中,上述获取与目标字段相关的目标数据值,具体实施时,可以包括以下内容:

S1:根据所述目标字段,生成关于目标字段的数据值设置界面;

S2:向用户展示所述数据值设置界面;

S3:通过所述数据值设置界面,获取与目标字段相关的目标数据值。

在本实施例中,在确定出目标字段后,服务器还可以进一步检测是否需要用户设置相关的目标数据值。在确定需要用户设置与目标字段相关的目标数据值时,还可以根据目标字段生成用于引导用户设置相关目标数据值的数据值设置界面。进而可以通过上述数据值设置界面接收用户设置的具体数据值作为目标数据值。

例如,在确定目标字段为“省份”时,可以配置包含有以下数据的数据值设置界面“__省”,并将该数据值设置界面通过终端设备展示给用户。用户可以在数据值设置界面中“__”处输入数据值“江苏”。相应的,服务器可以通过上述数据值设置界面采集到上述数据值作为与目标字段“省份”相关的目标数据值。

在一些实施例中,服务器还可以生成包含有多个待选数据值的数据值设置界面,并将该界面展示给用户。这样用户可以从所展示的多个待选数据值中选中符合要求的数据值。相应的,服务器可以将上述数据值设置界面中用户选中的数据值确定为目标数据值。

S205:根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句。

在一些实施例中,上述预设的拼接规则具体可以理解为一种基于编程语言的模板规则。具体的,可以是一种基于SQL的模板规则。其中,SQL(Structured Query Language,结构化查询语言)具体可以理解为一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

在一些实施例中,相应的,上述目标查询语句具体可以是一种基于SQL的底层查询语句。

在一些实施例中,具体实施时,服务器可以基于上述预设的拼接规则,将所获取的目标主题类型、目标字段、目标数据值进行拼接组装,以生成符合用户的查询需求的底层查询语句,作为目标查询语句。这样用户不需要具备专业的编程知识就能得到满足具体查询需求的底层查询语句。

S206:根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

在一些实施例中,具体进行数据查询时,服务器可以根据上述目标查询语句,只对多个预设的源表中目标源表进行查询操作,而不需要对所有的预设的源表进行查询操作,从而可以较为高效地查询得到用户所需要数据,作为目标数据。

在一些实施例中,在根据所述目标查询语句,通过查询所述目标源表,以获取目标数据之后,所述方法具体实施时,还可以包括:向用户展示所述目标数据。

在本实施例中,具体的,服务器可以将所查询到的目标数据发送给布设于用户层终端设备,进而可以通过终端设备向用户展示出上述目标数据。

进一步,服务器还可以通过终端设备接收用户针对所展示的目标数据的反馈信息,并根据上述反馈信息,结合当前所查询到的目标数据,进行其他的关联查询,从而可以满足用户更加多样化的查询需求。

在一些实施例中,具体实施前,服务器还可以获取并利用历史查询记录,预先确定出多个预设的主题类型、与多个预设的主题类型分别对应的预设的字段池和预设的条件池,以及预设的主题类型与预设的源表之间的匹配关系。

在一些实施例中,在接收查询请求之前,所述方法具体实施时,还可以包括以下内容:

S1:获取历史查询记录;其中,所述历史查询记录包含有多条历史查询语句;

S2:将所述多条历史查询语句划分为多个数据组;其中,所述多个数据组中的各个数据组分别与一种预设的主题类型对应;

S3:根据数据组所包含的历史查询语句,构建与预设的主题类型对应的预设的字段池和预设的条件池。

在一些实施例中,服务器可以通过采集历史上出现的多条历史查询语句,以及基于上述多个历史查询语句所查询的预设的源表、所查询得到的数据结果,以获取上述历史查询记录。

在一些实施例中,服务器可以通过对历史查询记录中的多条历史查询语句进行聚类处理,得到多个聚簇。其中,每一个聚簇对应一个主题类型,可以将每一聚簇所对应的主题类型确定为一个预设的主题类型。同时,可以将每一个聚簇中所包含的多条历史查询语句划分为一个数据组。从而可以得到多个分别与一种预设的主题类型对应的数据组。

在一些实施例中,上述根据数据组所包含的历史查询语句,构建与预设的主题类型对应的预设的字段池和预设的条件池,具体实施时,可以包括以下内容:按照以下方式构建与当前主题类型对应的预设的字段池和预设的条件池:从多个数据组中,确定出与当前主题类型对应的数据组,作为当前数据组;从当前数据组所包含的历史查询语句中,提取出类别型属性字段、数值型属性字段,以及关系字段;统计各个类别型属性字段的使用频率、各个数值型属性字段的使用频率,以及各个关系字段的使用频率;筛选出使用频率符合要求的多个类别型属性字段,构建与当前主题类型对应的预设的类别型属性字段池;筛选出使用频率符合要求的多个数值型属性字段,构建与当前主题类型对应的预设的数值型属性字段池;筛选出使用频率符合要求的多个关系字段,构建与当前主题类型对应的预设的条件池。

其中,上述使用频率符合要求的多个类别型属性字段具体可以是与当前主题类型对应的类别型属性字段中使用频率最高的预设个数个(例如,20个)类别型属性字段。类似的,上述使用频率符合要求的多个数值型属性字段具体可以是与当前主题类型对应的数值型属性字段中使用频率最高的预设个数个数值型属性字段。上述使用频率符合要求的多个关系字段具体可以是与当前主题类型对应的关系字段中使用频率最高的预设个数个关系字段。

通过上述方式,可以分别构建得到与各个预设的主题类型对应的预设的字段池和预设的条件池。

在一些实施例中,在将所述多条历史查询语句划分为多个数据组之后,所述方法具体实施时,还可以包括:根据所述历史查询记录,确定出各个数据组中的历史查询语句历史上查询过的预设的源表;根据所述各个数据组中的历史查询语句历史上查询过的预设的源表,建立预设的主题类型与预设的源表之间的匹配关系。从而可以基于历史查询记录,预先确定出与各个预设的主题类型相关的,查询时可能会涉及到的预设的源表(即,与预设的主题类型相匹配的预设的源表)。这样后续具体进行数据查询时,可以根据主题类型,只对可能会涉及到的那部分预设的源表进行查询操作,而不需要对所有的预设的源表都进行查询操作。从而可以有效地降低数据查询过程的数据处理量,缩短查询耗时。

在一些实施例中,服务器还可以通过终端设备采集用户的针对所展示的目标数据的反馈信息。进一步,服务器可以每隔预设的时间段(例如,一周),将该时间段所采集的反馈信息进行汇总,并根据该时间段的反馈信息对所确定的预设的主题类型、与预设的主题类型对应的预设的字段池和预设的条件池,以及预设的主题类型与预设的源表之间匹配关系进行相应的调整、更新,从而可以不断地提高数据查询精度和查询效率。

由上可见,本说明书实施例提供的数据查询方法,基于该方法,具体实施前,可以获取并根据历史查询记录构建与多个预设的主题类型分别对应的预设的字段池和预设的条件池,并建立预设的主题类型与预设的源表之间的匹配关系;具体实施时,可以先根据所接收到的查询请求中携带的查询主题,确定出相匹配的目标主题类型;再根据目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并且,还从多个预设的源表中,确定出与目标主题类型相匹配的目标源表;进一步,可以根据目标字段池、目标条件池,获取目标字段,以及与目标字段相关的目标数据值;并根据上述目标主题类型、目标字段、目标数据值,自动生成对应的目标查询语句;进而可以根据上述目标查询语句,只针对预设的源表中的目标源表进行数据查询,以获取要查询的目标数据。从而可以有效地简化用户操作,降低用户的操作难度;使得用户可以高效、便捷地查询获取满足要求的目标数据,提高用户的使用体验。

本说明书实施例还提供一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:接收查询请求;其中,所述查询请求至少携带有查询主题;根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

为了能够更加准确地完成上述指令,参阅图3所示,本说明书实施例还提供了另一种具体的服务器,其中,所述服务器包括网络通信端口301、处理器302以及存储器303,上述结构通过内部线缆相连,以便各个结构可以进行具体的数据交互。

其中,所述网络通信端口301,具体可以用于接收查询请求;其中,所述查询请求至少携带有查询主题。

所述处理器302,具体可以用于根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

所述存储器303,具体可以用于存储相应的指令程序。

在本实施例中,所述网络通信端口301可以是与不同的通信协议进行绑定,从而可以发送或接收不同数据的虚拟端口。例如,所述网络通信端口可以是负责进行web数据通信的端口,也可以是负责进行FTP数据通信的端口,还可以是负责进行邮件数据通信的端口。此外,所述网络通信端口还可以是实体的通信接口或者通信芯片。例如,其可以为无线移动网络通信芯片,如GSM、CDMA等;其还可以为Wifi芯片;其还可以为蓝牙芯片。

在本实施例中,所述处理器302可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。本说明书并不作限定。

在本实施例中,所述存储器303可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。

本说明书实施例还提供了一种基于上述数据查询方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:接收查询请求;其中,所述查询请求至少携带有查询主题;根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

在本实施例中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。

在本实施例中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。

参阅图4所示,在软件层面上,本说明书实施例还提供了一种数据查询装置,该装置具体可以包括以下的结构模块:

接收模块401,具体可以用于接收查询请求;其中,所述查询请求至少携带有查询主题;

第一确定模块402,具体可以用于根据所述查询主题,从多个预设的主题类型中确定出相匹配的目标主题类型;

第二确定模块403,具体可以用于根据所述目标主题类型,从多个预设的字段池、多个预设的条件池中,确定出相匹配的目标字段池、目标条件池;并从多个预设的源表中,确定出相匹配的目标源表;其中,所述目标字段池存储有多个与目标主题类型相关的属性字段,所述目标条件池存储有多个与目标主题类型相关的关系字段;

第一获取模块404,具体可以用于根据所述目标字段池、所述目标条件池,获取目标字段,以及与目标字段相关的目标数据值;

生成模块405,具体可以用于根据所述目标主题类型、目标字段、目标数据值,以及预设的拼接规则,生成目标查询语句;

第二获取模块406,具体可以用于根据所述目标查询语句,通过查询所述目标源表,以获取目标数据。

需要说明的是,上述实施例阐明的单元、装置或模块等,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

由上可见,基于本说明书实施例提供的数据查询装置,可以简化用户操作,高效地查询获取满足用户具体要求的目标数据,提高用户的使用体验。

在一个具体的场景示例中,可以应用本说明书所提供的上述数据查询方法实现基于配置化字段与条件的数据查询。具体实施过程可以参阅以下内容进行。

在本场景示例中,使用传统的数据查询方法在数据源表、字段、查询条件等可变因素的影响下,虽具有灵活性,但也对用户的技能具有较高的要求,对日常的数据查询造成一定门槛。基于该方法,通过略微地降低查询灵活度,利用主题式的字段与条件归集(例如,与目标主题类型匹配的预设的字段池和预设的条件池),形成一篮子搭配方案,赋予用户在查询主题域内进行有限度的自由查询的能力,以此降低数据查询门槛,提高数据使用便利性。

具体实施前,可以按照以下方式构建查询主题(例如,预设的主题类型)、字段池与计算条件池(例如,预设的字段池和预设的条件池)。

具体构建查询主题时,在某个特定的应用场景(例如,银行的业务数据处理场景)中,来源的数据库表是相对明确的,数据库表之间的关联关系可以由技术人员掌握确定。在本场景示例中,可以预先设定查询主题(例如,确定预设的主题类型);同时,在逻辑上把数据库表的关联关系进行配置(例如,建立预设的主题类型与预设的源表之间的匹配关系),进行业务定义绑定业务字段与数据库字段的关系,生成一个面向业务的数据查询主题,以统一的底层转换引擎支持业务逻辑与数据查询SQL语句的转换结构。

进一步,在上述查询主题中可以避免使用一些偏技术专用的字段,例如MD5验证码、记录哈希值等,只对用户开放具有明确业务含义的字段。

具体构建字段池与计算条件池时,可以将来源于相关源表的部分业务字段作为常见查询要素,例如,某个查询主题域内使用频率较高的字段(例如,属性字段)。

在本场景示例中,可以从业务用户角度出发,将这些上述常用查询要素整理为一个字段池。其中,字段池具体可以存储有以业务能理解的文字进行展示,例如账号、存款余额等。进一步,还可以对字段池中的字段区分维度(例如,类别型属性字段)与度量(例如,数值型属性字段)。进而可以针对维度字段配置可选条件池(例如,预设的类别型字段池),以支持用户灵活筛选维度信息,例如,账户性质提供下拉可选的选项、出生日期配置日期区间范围、机构提供机构树可视化选择等。针对度量字段配置可计算条件池(例如,预设的数值型字段池),以支持数值型的比较计算。从而可以面向用户为各主题提供简便易用且灵活多变的数据查询模型。

在本场景示例中,具体进行上述配置时,还可以根据不同场景的业务需求,支持用户进行查询主题和相关数据的个性化配置。

具体的,用户可以根据业务需求个性化地使用源表(例如,预设的源表),建立字段池,并按需丰富字段池的内容;并保持条件池基本稳定。其中,常见的维度(例如,主题)可以包括:客户、账户、合约、产品、员工等等。以客户维度的数据查询为例。可以参阅表1、表2所示的内容,构建以下所示的字段池和计算条件池。

表1客户维度场景字段池

表2客户维度场景条件池

具体实施时,用户可以根据具体的查询需求,基于上述查询主题,以及字段池与计算条件池,较为简便、高效地进行查询语句的个性化配置,以查询得到所需要的数据(记为目标数据)。

在本场景示例中,基于上述结构,可以支持用户在不同场景的查询主题下,根据业务需求从字段池中选取需要作为查询条件的指标;从条件池中选取条件,以自动生成相应的查询语句。具体可以参阅图5、图6所示。

首先,可以先确定条件之间的关系。通过在条件区(例如,选择界面)所展示的组合类型中选择“或者”、“并且”等字段(例如,关系字段),来对应SQL语句中的“and”、“or”等,并通过点击界面中“增加组合”以确定选择。

同时,还可以在界面中选择相应的字段(作为属性字段)。具体的,可以在字段区选择字段后,在条件区输入字段取值,包括所选择的属性,或所输入的数值范围(例如,目标数据值),并通过点击界面中的“增加条件”以确定选择。

在本场景示例中,还可以支持用户随时在表达式区选择节点进行条件补充。其中,还包括关于高层级表示低层级条件之间的关联关系的补充。可以参阅图7所示。

具体实施时,用户可以根据需要,从字段池挑选需要展示到结果的字段。相应的,底层查询引擎根据用户字段池的挑选及条件池的配置,灵活生成查询SQL语句(例如,目标查询语句)。从而可以在查询引擎进行性能优化,无需业务用户熟悉数据库操作技能,方便用户操作,提高用户查询数据时的使用体验。

通过上述场景示例,可以形成一套通过配置字段与条件即可实现数据查询的方法。通过构建字段池、条件池,并利用上述字段池、条件池中的固定字段和条件拼装查询语句,可以降低了数据查询的技术门槛,方便用户能够根据不同应用场景,较为高效、边界地实现灵活多变的数据查询。

虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

通过以上的实施例的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。

相关技术
  • 服务器数据查询方法、云端服务器及数据查询系统
  • 一种多数据源集成的数据查询方法、装置及业务服务器
技术分类

06120112986309