查询数据的方法及装置与流程

文档序号:29326665发布日期:2022-03-19 23:33阅读:121来源:国知局
查询数据的方法及装置与流程

1.本说明书一个或多个实施例涉及数据查询的技术领域,特别涉及一种查询数据的方法及装置。


背景技术:

2.目前来说,在查询领域中,通常采用sql(structured query language,结构化查询语言)进行数据的查询。由于sql跟人们通常使用的自然语言之间有较大差别,并且,sql为一种编程语言,具有一定的使用门槛,因此,对用户不友好,也影响了数据查询的效率。


技术实现要素:

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.图1是本说明书根据一示例性实施例示出的一种查询数据的场景示意图;图2是本说明书根据一示例性实施例示出的一种查询数据的方法流程图;图3是本说明书根据一示例性实施例示出的一种在用户界面上的预设区域输出备选过滤条件的界面示意图;图4是本说明书根据一示例性实施例示出的一种生成目标字典的方法的流程图;图5是本说明书根据一示例性实施例示出的一种查询数据的装置的框图。
具体实施方式
30.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明
书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
31.目前来说,在查询领域中,通常采用sql(structured query language,结构化查询语言)进行数据的查询。由于sql跟人们通常使用的自然语言之间有较大差别,并且,sql为一种编程语言,具有一定的使用门槛,因此,对用户不友好,也影响了数据查询的效率。而如果采用自然语言进行数据的查询,需要用户输入完整的过滤条件。如果需要输入的过滤条件过长,或者其中包含生僻字,或者其中包含读音易错字,或者拼写易错字等,也都仍然会给用户带来一定程度上的不便,因此,也会影响数据查询的效率。
32.本说明书实施例提供了一种查询数据的方案,用户在查询数据时,在不使用专用编程语言的前提下,无需输入完整的过滤条件,提高了数据查询的效率。
33.如图1所示,是根据一示例性实施例示出的一种查询数据的场景示意图。
34.图1中,首先,用户可以预先输入待查询的目标数据集,可以对目标数据集中的自然语言数据进行分析,生成目标字典。目标字典中包括由目标数据集中的属性和属性值构成的使用自然语言的多个键值对。生成目标字典之后,可以基于目标字典,不限次数的对目标数据集中的数据进行查询。需要说明的是,如果对目标数据集进行了更新,也可以同时利用更新目标数据集的数据更新目标字典。
35.接着,当用户需要对目标数据集进行查询时,可以输入使用自然语言的字符串,例如中文的关键字/词,或者英文的字母等。该字符串可以是用于查询数据的过滤条件中属性值的部分字符串,可以根据用户输入的字符串,从目标字典包括的各个键值对的属性值中查找包含该字符串的属性值,并从包含该字符串的属性值所对应的键值对中选取至少部分键值对,作为备选过滤条件。
36.继而,可以在用户界面的预设区域,显示备选过滤条件,以供用户选择。用户可以通过点选的方式,从备选过滤条件中选中用于查询数据的目标过滤条件。然后,根据目标过滤条件从目标数据集中查询数据,并将得到的查询结果返回给用户。
37.下面将结合具体的实施例对本说明书提供的方案进行详细描述。
38.如图2所示,图2是根据一示例性实施例示出的一种查询数据的方法的流程图,该方法的执行主体可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:在步骤201中,获取用户针对目标数据集使用自然语言输入的字符串。
39.在本实施例中,目标数据集为待查询的数据集,可以包括多个属性和各个属性各自对应的各个属性值,其中,各个属性和各个属性值均使用自然语言数据集示。可以理解,目标数据集可以是任意形式的数据集,本实施例对目标数据集的具体形式方面不限定。
40.在本实施例中,用户在从目标数据集中查询数据时,可以使用自然语言输入和查询数据的过滤条件关联的字符串。例如,查询数据的过滤条件为“country=波斯尼亚和黑塞哥维那共和国”,其中,“country”为属性(即键),“波斯尼亚和黑塞哥维那共和国”为属性值(即值),则用户可以输入字符串“波”,或者输入字符串“维”,或者输入过滤条件的属性值中包括的任意连续的字符串等。
41.在步骤202中,基于上述字符串从预先针对目标数据集生成的目标字典中获取至少一个备选过滤条件,任一备选过滤条件包括由属性和属性值构成的使用自然语言的键值对。
42.具体来说,可以在对目标数据集进行查询之前,预先输入目标数据集,对目标数据集进行解析,得到目标数据集中至少部分属性中的各个属性以及各个属性各自对应的各个属性值。每个属性与对应的属性值构成一个键值对(属性为键值对中的键,属性值为键值对中的值),利用得到的键值对生成针对目标数据集的目标字典,使目标字典包括得到的各个键值对。其中,目标数据集中至少部分属性可以是目标数据集中的所有属性,也可以是对应于离散型属性值的属性,例如,离散型属性值可以是非数字类型的属性值。
43.在进行查询时,可以基于用户针对目标数据集使用自然语言输入的字符串,从目标字典中获取至少一个备选过滤条件。具体地,可以遍历目标字典中的各个键值对,针对任一键值对,确定该键值对对应的属性值(即该键值对的值)中是否包含用户输入的上述字符串。将包含上述字符串的属性值所对应的键值对作为目标键值。遍历完成后得到至少一个目标键值对,基于该至少一个目标键值对获取备选过滤条件。
44.例如,目标字典中包括以下键值对:country =中国,country =波斯尼亚和黑塞哥维那,country =日本,country =波兰,country =美国,city=宁波,city=波士顿,city=北京,city=东京,city=华沙,city=莫斯塔尔。如果用户查询数据的过滤条件为“country=波斯尼亚和黑塞哥维那”,那么用户可以输入字符串“波”,可以将目标字典中包含字符串“波”的属性值所对应的键值对作为目标键值对。因此,目标键值对包括以下四个键值对:country =波斯尼亚和黑塞哥维那共和国,country =波兰,city=宁波,city=波士顿。最后,可以基于目标键值对获取备选过滤条件。
45.在一种实现方式中,可以将得到的目标键值对都作为备选过滤条件,按照随机的顺序,或者按照预设的顺序,向用户输出备选过滤条件。在另一种实现方式,还可以先判断目标键值对的数量是否大于预设阈值,如果目标键值对的数量不大于预设阈值,则将得到的目标键值对都作为备选过滤条件,向用户输出备选过滤条件。如果目标键值对的数量大于预设阈值,则可以选取部分目标键值对作为备选过滤条件,向用户输出备选过滤条件。
46.可选地,还可以先将至少一个目标键值对按照预设的排序方式进行排序,然后,选取排序中的前预设个数个目标键值,作为备选过滤条件。其中,可以按照历史查询总次数从多到少的顺序进行排序,也可以按照预设时间段内的查询次数从多到少的顺序进行排序,还可以按照包含字符数从多到少的顺序进行排序。可以理解,还可以按照其他任意合理的方式对目标键值对进行排序,本实施例对排序的具体方式方面不限定。
47.在步骤203中,向用户输出上述至少一个备选过滤条件,以供用户选择。
48.在本实施例中,可以向用户输出上述至少一个备选过滤条件,以供用户选择。可选地,可以在用户界面上的预设区域中,以可选的方式显示上述至少一个备选过滤条件。如图3所示,区域301为字符串输入框,用户可以使用自然语言在区域301输入针对目标数据集的字符串,例如,用户在区域301输入字符串“北”。然后,在区域302输出供用户选择的备选过滤条件,例如,在区域302输出备选过滤条件“城市=北屯市”“城市=北京市”“省=北京”“省=河北省”“省=湖北省”“城市=北海市”。用户可以从备选过滤条件中选择用于查询数据的目标过滤条件。例如,用户可以点选“城市=北屯市”,则可以将“城市=北屯市”作为目标过滤条
件。
49.在步骤204中,根据用户从备选过滤条件中选中的目标过滤条件从目标数据集中查询数据。
50.在本实施例中,可以根据用户从备选过滤条件中选中的目标过滤条件进行数据查询,需要说明的是,用户可以基于一个目标过滤条件进行数据查询,也可以继续输入字符串,并继续获取多个目标过滤条件,然后,基于多个目标过滤条件进行数据查询。
51.本说明书的上述实施例提供的查询数据的方法,通过获取用户针对目标数据集使用自然语言输入的字符串,从预先针对目标数据集生成的目标字典中获取至少一个备选过滤条件,向用户输出至少一个备选过滤条件,以供用户选择,并根据用户从备选过滤条件中选中的目标过滤条件从目标数据集中查询数据。从而使得用户在查询数据时,在不使用专用编程语言的前提下,无需输入完整的过滤条件,提高了数据查询的效率。
52.如图4所示,图4是根据一示例性实施例示出的在步骤201之前生成目标字典的方法的流程图,该方法的执行主体可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:在步骤401中,获取目标数据集,并在步骤402中,对目标数据集进行解析生成目标字典。
53.具体来说,可以获取用户输入的待查询的目标数据集,并对该目标数据集中的自然语言数据进行解析,得到目标数据集中至少部分属性中的各个属性以及各个属性各自对应的各个属性值。该至少部分属性可以是目标数据集中的全部属性,也可以是目标数据集中对应于离散型属性值的属性。然后,利用该各个属性以及各个属性各自对应的各个属性值构成各不相同的多个键值对,由该多个键值对生成目标字典。
54.例如,对该目标数据集中的自然语言数据进行解析之后,得到目标数据集中的所有属性,包括“省”“城市”“区”“销量”。其中,“省”“城市”“区”为对应于离散型属性值(非数字)的属性。“销量”为对应于连续型属性值(数字)的属性。因此,可以获取“省”“城市”“区”各自的各个属性值,经过去重后,可以得到以下多个键值对:“省=北京”“省=江苏”“省=浙江”“省=山东”“市=北京市”“市=杭州市”“市=南京市”“市=济南市
”……
。生成目标字典,使得目标字典包括该多个键值。
55.需要说明的是,当更新该目标数据集时,可以同时基于更新数据,对目标字典进行更新。例如,在该目标数据集中加入了“省=山东,市=青岛,销量=n”的条目,则可以基于该新增条目更新目标字典。具体来说,对该条目进行解析,可以得到属性“省”,“市”,“销量”,选取对应于离散型属性值的属性“省”和“市”以及获取相应的属性值,得到键值对“省=山东”和“市=青岛”。其中,目标字典中已有键值对“省=山东”,因此,仅将“市=青岛”添加入目标字典中,从而对目标字典进行更新。
56.应当注意,尽管在上述实施例中,以特定顺序描述了本说明书实施例的方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
57.与前述查询数据的方法实施例相对应,本说明书还提供了查询数据的装置的实施
例。
58.如图5所示,图5是本说明书根据一示例性实施例示出的一种查询数据的装置框图,该装置可以包括:输入模块501,获取模块502,输出模块503和查询模块504。
59.其中,输入模块501,用于获取用户针对目标数据集使用自然语言输入的字符串。
60.获取模块502,用于基于上述字符串从预先针对目标数据集生成的目标字典中获取至少一个备选过滤条件,任一备选过滤条件包括由属性和使用自然语言的属性值构成的键值对。
61.输出模块503,用于向用户输出该备选过滤条件,以供用户选择。
62.查询模块504,用于根据用户从备选过滤条件中选中的目标过滤条件从目标数据集中查询数据。
63.在一些实施方式中,目标字典包括由目标数据集中至少部分属性中的各个属性以及各个属性各自对应的各个属性值构成的各个键值对。
64.在另一些实施方式中,获取模块502可以包括:遍历子模块和获取子模块(图中未示出)。
65.其中,遍历子模块,用于遍历目标字典中的各个键值对,确定至少一个目标键值对,任一目标键值对应的属性值包括上述字符串。
66.获取子模块,用于基于至少一个目标键值对获取备选过滤条件。
67.在另一些实施方式中,获取子模块被配置用于:将至少一个目标键值对按照预设的排序方式进行排序,选取排序中的前预设个数个目标键值对,作为备选过滤条件。
68.在另一些实施方式中,获取子模块通过如下方式按照预设的排序方式进行排序:按照历史查询总次数从多到少的顺序进行排序;或者按照预设时间段内的查询次数从多到少的顺序进行排序;或者按照包含字符数从多到少的顺序进行排序。
69.在另一些实施方式中,输出模块503被配置用于:在用户界面上的预设区域中,以可选的方式显示备选过滤条件。
70.在另一些实施方式中,该装置还可以包括:数据集获取模块和生成模块(图中未示出)。
71.其中,数据集获取模块,用于在获取用户针对目标数据集输入的字符串之前,获取目标数据集。
72.生成模块,用于对目标数据集进行解析,生成目标字典。
73.在另一些实施方式中,生成模块被配置用于:对目标数据集中的自然语言数据进行解析,得到目标数据集中至少部分属性中的各个属性以及各个属性各自对应的各个属性值。利用各个属性以及各个属性各自对应的各个属性值构成各不相同的多个键值对。由该多个键值对生成目标字典。
74.在另一些实施方式中,上述至少部分属性为对应于离散型属性值的属性。
75.在另一些实施方式中,该装置还可以包括:新增模块,确定模块和更新模块(图中未示出)。
76.其中,新增模块,用于在对目标数据集进行更新之后,获取更新数据。
77.确定模块,用于基于上述更新数据确定新增键值对。
78.更新模块,用于利用该新增键值对更新目标字典。
79.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书一个或多个实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
80.本说明书一个或多个实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图2至图4任一实施例提供的查询数据的方法。
81.本说明书一个或多个实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述2至图4任一实施例提供的查询数据的方法。
82.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
83.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1