一种数据查询方法及装置制造方法及图纸

技术编号:35304727 阅读:12 留言:0更新日期:2022-10-22 12:54
本说明书实施例提供了一种数据查询方法及装置,该方法包括:获取用于对数据存储系统进行数据查询的第一语句,第一语句基于自然语言;确定第一语句的自然语义,自然语义包括数据查询依据的查询条件、以及对于所述数据查询旨在获取的目标数据项的描述;基于自然语义,生成查询逻辑树,查询逻辑树指示依据查询条件,得到目标数据项的中间逻辑步骤,且,中间逻辑步骤与数据存储结构无关;根据查询逻辑树,生成基于数据查询语言的第二语句。生成基于数据查询语言的第二语句。生成基于数据查询语言的第二语句。

【技术实现步骤摘要】
一种数据查询方法及装置
[0001]本申请是2022年1月19日递交的、申请号为202210058343.8,名为“一种数据查询方法及装置”的专利技术专利申请的分案申请。


[0002]本说明书一个或多个实施例涉及自然语言处理领域和数据分析领域,尤其涉及一种数据查询方法及装置。

技术介绍

[0003]自然语言查询是根据自然语言进行数的数据查询。自然语言查询降低数据查询作业的技术门槛,使得操作人员无需掌握专业的数据查询语言既可以方便的进行数据查询。尤其,例如在企业中掌握数据查询语言的专业技术人员数量不足,或数据查询需求量巨大的场景中,帮助企业因以上原因造成的可进行数据查询作业量的瓶颈,提高企业数据查询的效率。但是,现有的利用自然语言的数据查询方法,仍然存在查询准确率仍较低、对于复杂查询作业的支持能力不足的问题。
[0004]因此,需要一种更好的数据查询方法。

技术实现思路

[0005]本说明书中的实施例旨在提供一种新的数据查询方法。该方法将自然语言形式的自然查询语句,生成表达查询逻辑、且与数据具体存储方式无关的查询逻辑树,然后根据查询逻辑树生成基于数据查询语言的查询执行语句。利用该方法,可以大大提供自然查询语句到查询执行语句之间的转换难度,提高两者之间的转换质量,进而大大提高根据自然语言的查询结果的准确率,以及提高对于依据自然语言的复杂查询作业的支持能力。
[0006]根据第一方面,提供了一种数据查询方法,包括:
[0007]获取用于对数据存储系统进行数据查询的第一语句,所述第一语句基于自然语言;
[0008]确定所述第一语句的自然语义,所述自然语义包括所述数据查询依据的查询条件、以及对于所述数据查询旨在获取的目标数据项的描述;
[0009]基于所述自然语义,生成查询逻辑树,所述查询逻辑树指示依据所述查询条件,得到所述目标数据项的中间逻辑步骤,且,所述中间逻辑步骤与数据存储结构无关;
[0010]根据所述查询逻辑树,生成基于数据查询语言的第二语句。
[0011]在一种可能的实施方式中,确定所述第一语句的自然语义,包括:
[0012]基于对所述第一语句的语法分析和语义分析,生成第一语句的自然语义树;
[0013]基于所述自然语义,生成查询逻辑树,包括:
[0014]根据所述自然语义树,生成查询逻辑树。
[0015]在一种可能的实施方式中,生成基于数据查询语言的第二语句,包括:
[0016]根据所述查询逻辑树、以及数据存储系统的数据存储结构,生成第二语句。
[0017]在一种可能的实施方式中,所述包括数据存储结构包括,数据存储系统的数据表结构以及数据表之间的关系。
[0018]在一种可能的实施方式中,所述数据查询语言包括SQL语言、SPARK数据查询语言中的一种。
[0019]在一种可能的实施方式中,所述基于所述自然语义,生成查询逻辑树,包括:
[0020]基于所述查询条件和目标数据项,以及预先定义的逻辑节点,生成查询逻辑树。
[0021]在一种可能的实施方式中,所述逻辑节点,包括查询节点、筛选条件节点、查询数据项节点,其中,所述筛选条件节点、查询数据项节点作为查询节点的子节点;
[0022]基于所述查询条件和目标数据项,以及预先定义的逻辑节点,生成查询逻辑树,包括:
[0023]基于所述查询条件和目标数据项,确定依次递进的若干查询步骤、以及各查询步骤分别对应的查询数据项、筛选条件;
[0024]基于所述查询步骤、所述查询步骤的次序、所述查询数据项和所述筛选条件,确定各查询步骤对应的查询节点、各查询节点拥有的筛选条件节点和查询数据项节点,以及各查询节点之间的从属关系;
[0025]根据所述各查询节点及其之间的从属关系,生成查询逻辑树。
[0026]在一种可能的实施方式中,所述查询逻辑树还包括筛选条件组节点和查询数据项组节点;所述筛选条件组节点作为所述各查询步骤对应的若干筛选条件节点的父节点,并作为所述各查询步骤对应的查询节点的子节点,所述查询数据项组节点作为若干查询数据项节点的父节点,并作为所述各查询步骤对应的查询节点的子节点。
[0027]在一种可能的实施方式中,所述查询逻辑树还包括数据项操作函数节点和数据项标识节点,并作为查询数据项节点的子节点,所述数据项操作函数节点对应于施加于查询数据项的操作函数,所述数据项标识节点对应于查询数据项的标识。
[0028]在一种可能的实施方式中,所述查询节点对应的查询结果数据集为若干子查询数据集的合集/交集/差集,所述查询节点具有所述若干子查询数据集分别对应的子查询节点,以及对应于子查询数据集之间的求并/求交/求差操作的集合操作子节点。
[0029]在一种可能的实施方式中,所述查询节点具有前置步骤子节点,用于指示该查询节点对应的查询步骤的前一步骤对应的查询节点;
[0030]基于所述查询步骤的次序,确定各查询节点之间的从属关系,包括:
[0031]基于所述查询步骤的次序,确定各查询节点的前置步骤子节点。
[0032]在一种可能的实施方式中,所述前置子步骤节点具有查询子节点或无前置标识子节点,所述查询子节点对应于所述前一步查询步骤对应的其他查询节点,所述无前置标识子节点用于指示无前置查询步骤。
[0033]根据第二方面,提供了一种数据查询装置,包括:
[0034]自然语句获取单元,配置为,获取用于对数据存储系统进行数据查询的第一语句,所述第一语句基于自然语言;
[0035]自然语义确定单元,配置为,确定所述第一语句的自然语义,所述自然语义包括所述数据查询依据的查询条件、以及对于所述数据查询旨在获取的目标数据项的描述;
[0036]查询逻辑确定单元,配置为,基于所述自然语义,生成查询逻辑树,所述查询逻辑
树指示依据所述查询条件,得到所述目标数据项的中间逻辑步骤,且,所述中间逻辑步骤与数据存储结构无关;
[0037]查询语句生成单元,配置为,根据所述查询逻辑树,生成基于数据查询语言的第二语句。
[0038]在一种可能的实施方式中,自然语义确定单元,进一步配置为:
[0039]基于对所述第一语句的语法分析和语义分析,生成第一语句的自然语义树;
[0040]基于所述自然语义,生成查询逻辑树,包括:
[0041]根据所述自然语义树,生成查询逻辑树。
[0042]在一种可能的实施方式中,查询语句生成单元,进一步配置为,
[0043]根据所述查询逻辑树、以及数据存储系统的数据存储结构,生成第二语句。
[0044]在一种可能的实施方式中,所述包括数据存储结构包括,数据存储系统的数据表结构以及数据表之间的关系。
[0045]在一种可能的实施方式中,查询逻辑确定单元,进一步配置为:
[0046]基于所述查询条件和目标数据项,以及预先定义的逻辑节点,生成查询逻辑树。
[0047本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据查询方法,包括:获取用于对数据存储系统进行数据查询的第一语句,所述第一语句基于自然语言;确定所述第一语句的自然语义,所述自然语义包括所述数据查询依据的查询条件、以及对于所述数据查询旨在获取的目标数据项的描述;基于所述自然语义以及预先定义的逻辑节点,生成查询逻辑树,所述查询逻辑树指示依据所述查询条件得到所述目标数据项的中间逻辑步骤,所述中间逻辑步骤由依次递进的若干查询步骤构成,且与数据存储结构无关;;根据所述查询逻辑树,生成基于数据查询语言的第二语句。2.根据权利要求1所述的方法,其中,生成基于数据查询语言的第二语句,包括:根据所述查询逻辑树、以及数据存储系统的数据存储结构,生成第二语句。3.根据权利要求2所述的方法,其中,所述数据存储结构包括,数据存储系统的数据表结构以及数据表之间的关系。4.根据权利要求1所述的方法,其中,所述数据查询语言包括SQL语言、SPARK数据查询语言中的一种。5.根据权利要求1所述的方法,其中,所述确定所述第一语句的自然语义,包括,基于对所述第一语句的语法分析和语义分析,生成第一语句的自然语义树;所述基于所述自然语义以及预先定义的逻辑节点,生成查询逻辑树,包括:根据所述自然语义树以及所述逻辑节点,生成查询逻辑树。6.根据权利要求1所述的方法,其中,所述逻辑节点,包括查询节点、筛选条件节点、查询数据项节点,其中,所述筛选条件节点、查询数据项节点作为查询节点的子节点;基于所述自然语义,以及预先定义的逻辑节点,生成查询逻辑树,包括:基于所述查询条件和目标数据项,确定依次递进的若干查询步骤、以及各查询步骤分别对应的查询数据项、筛选条件;基于所述查询步骤、所述查询步骤的次序、所述查询数据项和所述筛选条件,确定各查询步骤对应的查询节点、各查询节点拥有的筛选条件节点和查询数据项节点,以及各查询节点之间的从属关系;根据所述各查询节点及其之间的从属关系,生成查询逻辑树。7.根据权利要求6所述的方法,其中,所述查询逻辑树还包括筛选条件组节点和查询数据项组节点;所述筛选条件组节点作为所述各查询步骤对应的若干筛选条件节点的父节点,并作为所述各查询步骤对应的查询节点的子节点,所述查询数据项组节点作为若干查询数据项节点的父节...

【专利技术属性】
技术研发人员:田有朋李俊刘海波朱文嘉黄亚东王小卫
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1