查询语句生成方法及装置制造方法及图纸

技术编号:37314748 阅读:16 留言:0更新日期:2023-04-21 22:56
本申请提供查询语句生成方法及装置,其中所述查询语句生成方法包括:接收用户提交的查询信息;将所述查询信息与预先构建的多个集合元数据进行匹配,根据匹配结果在多个集合元数据中确定目标集合元数据;根据所述目标集合元数据以及所述查询信息对预设的语法树模板进行填充,根据填充结果生成查询语法树;通过遍历所述查询语法树中的查询节点确定所述查询节点对应的节点信息,并将所述节点信息拼装为所述查询信息对应的查询语句。实现了基于集合元数据生成语法树并将语法树转换为查询语句,提高了查询语句生成的精准度,并实现了根据用户的需求自动化生成对应的查询语句。户的需求自动化生成对应的查询语句。户的需求自动化生成对应的查询语句。

【技术实现步骤摘要】
查询语句生成方法及装置


[0001]本申请涉及数据处理
,特别涉及查询语句生成方法。本申请同时涉及查询语句生成装置,一种计算设备,以及一种计算机可读存储介质。

技术介绍

[0002]随着业务日益复杂化,用户在数据库中需要查询的信息越来越多样化,也越来越复杂化。而在用户使用数据库进行数据查询时,需要用户掌握数据库相关的查询语言。在业务场景复杂的情况下,会大大提高用户使用数据库的门槛。若使用人工智能方式生成查询语句,由于涉及人工智能技术,需要收集大量的训练数据,查询语句的生成精准度受算法影响较大,所以实施复杂度较高;其次,对于快速多变的分析场景,较难收集较多训练数据来保障生成查询语句的精准度;再次,复杂的业务场景分析,导致生成的查询语句的精准度较难达到100%。因此,亟需提供一种解决上述问题的方案。

技术实现思路

[0003]有鉴于此,本申请实施例提供了查询语句生成方法。本申请同时涉及查询语句生成装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的生成查询语句的实施复杂度高以及精准度不高的问题。
[0004]根据本申请实施例的第一方面,提供了一种查询语句生成方法,包括:
[0005]接收用户提交的查询信息;
[0006]将所述查询信息与预先构建的多个集合元数据进行匹配,根据匹配结果在多个集合元数据中确定目标集合元数据;
[0007]根据所述目标集合元数据以及所述查询信息对预设的语法树模板进行填充,根据填充结果生成查询语法树;
[0008]通过遍历所述查询语法树中的查询节点确定所述查询节点对应的节点信息,并将所述节点信息拼装为所述查询信息对应的查询语句。
[0009]根据本申请实施例的第二方面,提供了一种查询语句生成装置,包括:
[0010]接收模块,被配置为接收用户提交的查询信息;
[0011]确定模块,被配置为将所述查询信息与预先构建的多个集合元数据进行匹配,根据匹配结果在多个集合元数据中确定目标集合元数据;
[0012]生成模块,被配置为根据所述目标集合元数据以及所述查询信息对预设的语法树模板进行填充,根据填充结果生成查询语法树;
[0013]拼装模块,被配置为通过遍历所述查询语法树中的查询节点确定所述查询节点对应的节点信息,并将所述节点信息拼装为所述查询信息对应的查询语句。
[0014]根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述计算机指令时实现所述查询语句生成方法的步骤。
[0015]根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现所述查询语句生成方法的步骤。
[0016]本实施例提供的查询语句生成方法,为了基于用户提交的查询信息生成对应的查询语句,接收用户提交的查询信息,并将查询信息与预先构建的多个集合元数据进行匹配,根据匹配结果在多个集合元数据中确定目标集合元数据,实现了在预先构建的集合元数据中确定可以提供查询所需信息的目标集合元数据;并根据集合元数据以及查询信息对预设的语法树模板进行填充,根据填充结果生成查询语法树,实现了基于对语法树模板的填充生成查询语法树,并提高了查询语法树的生成效率以及准确率;再通过遍历查询语法树中的查询节点确定查询节点对应的节点信息,将节点信息拼装为查询信息对应的查询语句,实现了将语法树转换为查询语句,并提高了查询语句生成的精准度。
附图说明
[0017]图1是本申请一实施例提供的一种查询语句生成方法的示意图;
[0018]图2是本申请一实施例提供的一种查询语句生成方法的流程图;
[0019]图3是本申请一实施例提供的一种查询语句生成方法中查询页面的示意图;
[0020]图4是本申请一实施例提供的一种查询语句生成方法中查询语法树的示意图;
[0021]图5是本申请一实施例提供的一种查询语句生成方法对应的查询语句生成系统的结构示意图;
[0022]图6是本申请一实施例提供的一种应用于模块交互场景中的查询语句生成方法的处理流程图;
[0023]图7是本申请一实施例提供的一种查询语句生成装置的结构示意图;
[0024]图8是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
[0025]在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
[0026]在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0027]应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
[0028]首先,对本申请一个或多个实施例涉及的名词术语进行解释。
[0029]领域特定语言(domain

specificlanguage,DSL):指的是专注于某个应用程序领
域的计算机语言。
[0030]SQL(StructuredQueryLanguage,结构化查询语言):是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
[0031]指标:是指可以量化的数据,是进行统计后的结果。
[0032]维度:是指事物现象的某种特征,从某种角度出发的度量统计,角度即为维度。
[0033]元数据(MetaDate):是指关于数据的数据或者叫做用来描述数据的数据或者叫做信息的信息。
[0034]ICEBERG(冰山):是一种新型的表格格式,用于存储和分析大型的移动缓慢的表格数据。
[0035]CLICKHOUSE:是一个完全面向列式的分布式数据库。
[0036]HIVE:是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。
[0037]抽象语法树(AbstractSyntaxTree,AST):是源代码语法结构的一种抽象表示,它以树状的形式表现编程语言的语法结构,树上的每个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种查询语句生成方法,其特征在于,包括:接收用户提交的查询信息;将所述查询信息与预先构建的多个集合元数据进行匹配,根据匹配结果在多个集合元数据中确定目标集合元数据;根据所述目标集合元数据以及所述查询信息对预设的语法树模板进行填充,根据填充结果生成查询语法树;通过遍历所述查询语法树中的查询节点确定所述查询节点对应的节点信息,并将所述节点信息拼装为所述查询信息对应的查询语句。2.根据权利要求1所述的查询语句生成方法,其特征在于,所述将所述查询信息与预先构建的多个集合元数据进行匹配,根据匹配结果在多个集合元数据中确定目标集合元数据,包括:获取所述查询信息中的至少两个查询字段,以及获取预先构建的多个集合元数据;将各个查询字段分别与各个集合元数据进行匹配;在存在包含至少两个查询字段的集合元数据的情况下,将包含至少两个查询字段的集合元数据确定为目标集合元数据。3.根据权利要求2所述的查询语句生成方法,其特征在于,所述将各个查询字段分别与各个集合元数据进行匹配之后,还包括:在不存在包含至少两个查询字段的集合元数据的情况下,按照预设筛选规则,在包含至少一个查询字段的集合元数据中筛选至少两个目标集合元数据,其中,至少两个目标集合元数据中包含的至少一个查询字段组成至少两个查询字段。4.根据权利要求1所述的查询语句生成方法,其特征在于,所述根据所述目标集合元数据以及所述查询信息对预设的语法树模板进行填充,根据填充结果生成查询语法树,包括:在所述目标集合元数据中提取所述查询信息中查询字段对应的数据表信息以及字段信息;基于所述数据表信息、所述字段信息以及所述查询信息创建待填充信息;将所述待填充信息填充至预设的语法树模板,生成查询语法树。5.根据权利要求4所述的查询语句生成方法,其特征在于,所述基于所述数据表信息、所述字段信息以及所述查询信息创建待填充信息,包括:根据所述数据表信息中表标识信息以及数据表关联信息,创建待填充表信息;根据所述查询信息中的查询字段以及所述查询字段在所述字段信息中对应的字段关联信息以及字段计算信息,创建待填充字段信息以及待填充计算信息;根据所述查询信息中的查询条件信息在所述字段信息中对应的字段条件信息,创建待填充条件信息;将所述待填充表信息、所述待填充字段信息、所述待填充计算信息以及所述待填充条件信息组合为待填充信息。6.根据权利要求5所述的查询语句生成方法,其特征在于,所述根据所述查询信息中的查询字段以及所述查询字段在所述字段信息中对应的字段关联信息以及字段计算信息,创建待填充字段信息以及待填充计算信息,包括:根据所述查询信息中的查询字段在所述字段信息中对应的字段标记信息,确定所述查...

【专利技术属性】
技术研发人员:孟帅帅
申请(专利权)人:上海哔哩哔哩科技有限公司
类型:发明
国别省市:

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

1