CN115080603B - 一种数据库查询语言转换方法、装置、设备及存储介质 - Google Patents
一种数据库查询语言转换方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115080603B CN115080603B CN202210977957.6A CN202210977957A CN115080603B CN 115080603 B CN115080603 B CN 115080603B CN 202210977957 A CN202210977957 A CN 202210977957A CN 115080603 B CN115080603 B CN 115080603B
- Authority
- CN
- China
- Prior art keywords
- index
- phrases
- data
- keywords
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2445—Data retrieval commands; View definitions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
Abstract
本发明公开了一种数据库查询语言转换方法、装置、设备及存储介质,通过获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;对获取的不同词性的关键词进行拼装,得到SQL语句。能够高效、便捷地将自然语句转化为数据库的SQL语句。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据库查询语言转换方法、装置、设备及存储介质。
背景技术
通过多年的信息化建设,各业务领域的信息系统经多年运行汇集了海量的运行数据,其中大部分有价值的业务数据存储于关系数据库(如Oracle、Mysql等主流数据库)中,呈现出规模大、种类多、范围广等特点,对于这类数据的获取和分析通常需要通过机器编程语言,即数据库查询语句与数据库进行交互操作,给数据分析带来了较高的门槛。
发明内容
为解决上述技术问题,本发明提供一种数据库查询语言转换方法、装置、设备及存储介质,能够快速将自然语句转化为数据库的SQL语句,降低数据分析的门槛。
本发明实施例提供一种数据库查询语言转换方法,所述方法包括:
获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;
采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;
对获取的不同词性的关键词进行拼装,得到SQL语句。
优选地,所述索引模型组的训练过程具体包括:
获取训练语句和SQL关键词;
将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源;
采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型;
将不同词性的词语转化生成的索引模型的集合作为所述索引模型组。
进一步地,所述将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源,具体包括:
将所述训练语句中预先标记为数据表名称的词组和对应的数据表名称进行匹配,并对应存储到table.txt文本中,作为数据表名称的数据源;
将所述训练语句中预先标记为数据表字段的词组和对应的数据表字段进行匹配,并对应存储到field.txt文本中,作为数据表字段的数据源;
将所述训练语句中预先标记为统计关键词的词组和对应的统计关键词进行匹配,并对应存储到stat.txt文本中,作为统计关键词的数据源;
将所述训练语句中预先标记为排序关键词的词组和对应的排序关键词进行匹配,并对应存储到sort.txt文本中,作为排序关键词的数据源;
将所述训练语句中预先标记为条件关键词的词组和对应的条件关键词进行匹配,并对应存储到cond.txt文本中,作为条件关键词的数据源;
将数据表名称和该数据表中的所有数据表字段进行匹配,并对应存储到table_field.txt文本中,作为数据表的数据源;
将数据表名称和该数据表中对应的子数据表名称进行匹配,并对应存储到table_table.txt文本中,作为数据表关联的数据源;
所述采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型,具体包括:
采用FST数据结构作为索引结构的索引工具lucene,根据table.txt文本的数据建立table_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据field.txt文本的数据建立field_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据stat.txt文本的数据建立stat_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据sort.txt文本的数据建立sort_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据cond.txt文本的数据建立cond_model索引模型。
作为上述方案的改进方案,所述采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词,具体包括:
通过field_model索引模型过滤出所述语句词组集合中数据表字段的词组,生成字段集合fs;
根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts;
通过stat_model索引模型过滤出所述语句词组集合中的与统计关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,对过滤出的词组对应的统计关键词作汇总标记statFlag;
通过sort_model索引模型过滤出所述语句词组集合中的与排序关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,对过滤出的词组对应的排序关键词作汇总标记sortFlag;
通过cond_model索引模型过滤出所述语句词组集合中的与条件关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,通过数据分类过滤,查询与过滤出的词组对应的条件关键词,将查询出的条件关键词作汇总标记condFlag。
进一步地,所述对获取的不同词性的关键词进行拼装,得到SQL语句,具体包括:
根据汇总标记statFlag、汇总标记sortFlag、汇总标记condFlag在对应的文本中查询,获取统计关键词、排序关键词和条件关键词;
将获取的统计关键词、排序关键词和条件关键词,与字段集合fs、表名集合ts进行拼接,获取SQL语句。
优选地,所述根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts,具体包括:
通过table_model索引模型过滤出所述语句词组集合中的与数据表名称匹配的词组,得到表名集合a;
通过table_field.txt文本对字段集合fs进行二次分析,过滤出语句词组集合中与数据表名称匹配的词组,得到表名集合b;
对表名集合a和表名集合b进行并集运算去重,并根据table_table.txt文本对并集运算后的表名集合内的多张数据表建立关联,生成表名集合ts。
作为一种优选方案,在获取待转换的自然语句后,所述方法还包括:
采用余弦相似度算法,计算预建的精确数据源中的每一SQL语句与所述自然语句的相似度,确定相似度最高的SQL语句作为备选语句,所述精确数据源包括不同的自然语句和SQL语句的一一对应关系;
当备选语句的相似度不小于预设的第一阈值时,将所述备选语句确定为所述自然语句转换后的SQL语句。
本发明实施例还提供一种数据库查询语言转换装置,所述装置包括:
拆分模块,用于获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;
分析模块,用于采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;
拼装模块,用于对获取的不同词性的关键词进行拼装,得到SQL语句。
优选地,所述装置还包括模型训练模块,具体用于:
获取训练语句和SQL关键词;
将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源;
采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型;
将不同词性的词语转化生成的索引模型的集合作为所述索引模型组。
进一步的,所述模型训练模块具体还用于:
将所述训练语句中预先标记为数据表名称的词组和对应的数据表名称进行匹配,并对应存储到table.txt文本中,作为数据表名称的数据源;
将所述训练语句中预先标记为数据表字段的词组和对应的数据表字段进行匹配,并对应存储到field.txt文本中,作为数据表字段的数据源;
将所述训练语句中预先标记为统计关键词的词组和对应的统计关键词进行匹配,并对应存储到stat.txt文本中,作为统计关键词的数据源;
将所述训练语句中预先标记为排序关键词的词组和对应的排序关键词进行匹配,并对应存储到sort.txt文本中,作为排序关键词的数据源;
将所述训练语句中预先标记为条件关键词的词组和对应的条件关键词进行匹配,并对应存储到cond.txt文本中,作为条件关键词的数据源;
将数据表名称和该数据表中的所有数据表字段进行匹配,并对应存储到table_field.txt文本中,作为数据表的数据源;
将数据表名称和该数据表中对应的子数据表名称进行匹配,并对应存储到table_table.txt文本中,作为数据表关联的数据源;
所述采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型,具体包括:
采用FST数据结构作为索引结构的索引工具lucene,根据table.txt文本的数据建立table_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据field.txt文本的数据建立field_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据stat.txt文本的数据建立stat_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据sort.txt文本的数据建立sort_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据cond.txt文本的数据建立cond_model索引模型。
进一步地,所述模型训练模块还具体用于:
通过field_model索引模型过滤出所述语句词组集合中数据表字段的词组,生成字段集合fs;
根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts;
通过stat_model索引模型过滤出所述语句词组集合中的与统计关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,对过滤出的词组对应的统计关键词作汇总标记statFlag;
通过sort_model索引模型过滤出所述语句词组集合中的与排序关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,对过滤出的词组对应的排序关键词作汇总标记sortFlag;
通过cond_model索引模型过滤出所述语句词组集合中的与条件关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,通过数据分类过滤,查询与过滤出的词组对应的条件关键词,将查询出的条件关键词作汇总标记condFlag。
优选地,所述拼装模块具体用于:
根据汇总标记statFlag、汇总标记sortFlag、汇总标记condFlag在对应的文本中查询,获取统计关键词、排序关键词和条件关键词;
将获取的统计关键词、排序关键词和条件关键词,与字段集合fs、表名集合ts进行拼接,获取SQL语句。
优选地,所述模型训练模块还具体用于:
通过table_model索引模型过滤出所述语句词组集合中的与数据表名称匹配的词组,得到表名集合a;
通过table_field.txt文本对字段集合fs进行二次分析,过滤出语句词组集合中与数据表名称匹配的词组,得到表名集合b;
对表名集合a和表名集合b进行并集运算去重,并根据table_table.txt文本对并集运算后的表名集合内的多张数据表建立关联,生成表名集合ts。
作为一种优选方案,所述装置还包括精确分析模块,所述精确分析模块具体用于:
在获取待转换的自然语句后,采用余弦相似度算法,计算预建的精确数据源中的每一SQL语句与所述自然语句的相似度,确定相似度最高的SQL语句作为备选语句,所述精确数据源包括不同的自然语句和SQL语句的一一对应关系;
当备选语句的相似度不小于预设的第一阈值时,将所述备选语句确定为所述自然语句转换后的SQL语句。
本发明另一实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述发明实施例所述的数据库查询语言转换方法。
本发明另一实施例提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的数据库查询语言转换方法。
与现有技术相比,本发明提供的一种数据库查询语言转换方法、装置、设备及存储介质,通过获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;对获取的不同词性的关键词进行拼装,得到SQL语句。能够高效、便捷地将自然语句转化为数据库的SQL语句。
附图说明
图1是本发明实施例提供的一种数据库查询语言转换方法的流程示意图;
图2是本发明实施例提供的一种数据源整理的流程示意图;
图3是本发明实施例提供的一种索引模型组构建的流程示意图;
图4是本发明实施例提供的FST数据结构的索引结构示意图;
图5是本发明实施例提供的索引工具lucene生成的FST结构示意图;
图6是本发明实施例提供的一种自然语句进行转换过程的流程示意图;
图7是本发明实施例提供一种数据库查询语言转换装置的结构示意图;
图8是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据库查询语言转换方法,参见图1,是本发明实施例提供的一种数据库查询语言转换方法的流程示意图,所述方法步骤S1~S3:
S1,获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;
S2,采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;
S3,对获取的不同词性的关键词进行拼装,得到SQL语句。
在本实施例具体实施时,本申请通过对待转换的自然语句进行逻辑上分析然后再将自然语句结构化为能识别的语言再转化为 SQL 语句;
具体的,获取待转换的自然语句,待转换的自然语句可以为用户通过终端设备输入的查询语言,用户输入的查询语言无法直接作为数据库的查询语言,因此需要进行转化;
根据语法结构对所述自然语句进行拆分,并删除无实际含义的词语,获取语句词组集合;
具体的,通过词典对自然语句进行拆分,输入的自然语句为:“我想要查访问日志的ip和操作员,含性别和职务”;
通过词典对自然语句的语法结构进行拆分之后得到:“我”、“想要”、“查”、“访问”、“日志”、“的”、“ip”、“和”、“操作员”、“含”、“性别”、“和”、“职务”等单字和词组;
删除不需要用的字或词,例如上的面“的”,这种词组对后面步骤的分析并没有帮助,可以删除,得到语句词组集合。
采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,所述索引模型组中包括不同词性的索引模型,每一索引模型中包括该词性的所词组与SQL关键词的匹配关系;采用不同词性的索引模型分别对对语句词组集合中不同词性的词组进行匹配分析,获取不同词性的词组对应的关键词;
最后,通过对拆分的不同词组对应的关键词进行拼装,得到所述自然语句转换后的SQL语句。
本申请采用一种简单快捷、易于使用利用人工智能技术把自然语句转换为数据库方言,即SQL语句的方法,能够高效、便捷的实现语句转换,能够帮助开发人员、DBA等从业人员快速转换SQL语句,减小编程的难度。
在本发明提供的又一实施例中,所述索引模型组的训练过程具体包括:
获取训练语句和SQL关键词;
将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源;
采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型;
将不同词性的词语转化生成的索引模型的集合作为所述索引模型组。
在本实施例具体实施时,所述步骤S2具体包括:
通过获取训练语句和SQL关键词进行索引模型组的训练,具体训练过程包括:
将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,其中不同词性的词组即根据语法结构对所述自然语句进行拆分,得到的词组集合汇总的词组,不同的SQL关键词包括数据表名称、数据表字段、排序关键词、统计关键词和条件关键词等一系列组成SQL语句的关键词,通过对词组和SQL关键词的匹配生成不同词性的词组对应的数据源;
采用FST数据结构的索引工具,不同词性的词组与对应的SQL关键词生成的数据源进行处理,将不同词性的词组的数据源转化成对应的索引模型;
将不同词性的词语转化生成的索引模型的集合作为所述索引模型组。
通过训练语句的不同词性的词组和SQL关键词的训练,生成索引模型组,索引模型组的不同索引模型能够分别对自然语句不同词性的词组进行转换,将转化后的各个关键词进行拼接,能够得到转换后的SQL,实现SQL语句转换的通用性,并提高转换效率。
在本发明提供的又一实施例中,所述将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源,具体包括:
将所述训练语句中预先标记为数据表名称的词组和对应的数据表名称进行匹配,并对应存储到table.txt文本中,作为数据表名称的数据源;
将所述训练语句中预先标记为数据表字段的词组和对应的数据表字段进行匹配,并对应存储到field.txt文本中,作为数据表字段的数据源;
将所述训练语句中预先标记为统计关键词的词组和对应的统计关键词进行匹配,并对应存储到stat.txt文本中,作为统计关键词的数据源;
将所述训练语句中预先标记为排序关键词的词组和对应的排序关键词进行匹配,并对应存储到sort.txt文本中,作为排序关键词的数据源;
将所述训练语句中预先标记为条件关键词的词组和对应的条件关键词进行匹配,并对应存储到cond.txt文本中,作为条件关键词的数据源;
将数据表名称和该数据表中的所有数据表字段进行匹配,并对应存储到table_field.txt文本中,作为数据表的数据源;
将数据表名称和该数据表中对应的子数据表名称进行匹配,并对应存储到table_table.txt文本中,作为数据表关联的数据源;
所述采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型,具体包括:
采用FST数据结构作为索引结构的索引工具lucene,根据table.txt文本的数据建立table_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据field.txt文本的数据建立field_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据stat.txt文本的数据建立stat_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据sort.txt文本的数据建立sort_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据cond.txt文本的数据建立cond_model索引模型。
在本实施例具体实施时,参见图2,是本发明实施例提供的一种数据源整理的流程示意图;
在根据训练语句和SQL关键词生成数据源的过程包括:精确查询整理、数据表整理、字段整理、统计函数整理、排序整理、条件整理、数据表与字段整理和关联表整理,具体的:
精确查询整理:精确查询整理是针对单独的训练语句的,生成一个训练语句与SQL语句的对应表,例如“统计一下用户人数 !# select count(*) from t_qx_userinfo”;“统计一下用户人数”这一训练语句对应了后面的SQL语句,中间用!#进行分离,然后保存到accurate.txt中,作为精确查询的精确数据源;
数据表整理:把数据表和对应的预先标记为数据表名称的词组进行匹配,例如“t_gy_oper_log操作日志”,然后保存到table.txt文本中,作为后面建立table_model索引模型的数据源;
字段整理:把数据表字段和对应标记为数据表字段的词组进行匹配,例如“USER_CODE 操作员代码 string”,然后保存到field.txt文本中,作为后面建立field_model索引模型的数据源;
统计函数整理:将所述训练语句中预先标记为统计关键词的词组和对应的统计关键词进行匹配,例如“统计 count”,然后保存到stat.txt文本中,作为后面建立stat_model索引模型的数据源;
排序整理:将所述训练语句中预先标记为排序关键词的词组和对应的排序关键词进行匹配,例如“升序asc”,然后保存到sort.txt文本中,作为后面建立sort_model索引模型的数据源;
条件整理:将所述训练语句中预先标记为条件关键词的词组和对应的条件关键词进行匹配,例如“男性男”,然后保存到cond.txt文本中,作为后面建立cond_model的索引模型的数据源;
数据表与字段整理:将数据表名称和该数据表中的所有数据表字段进行匹配,例如“t_gy_oper_log USER_CODE”,然后保存到table_field.txt文本中,作为后面建立数据过滤分析使用;
关联表整理:将数据表名称和该数据表中对应的子数据表名称进行匹配,例如“t_gy_oper_log USER_CODE t_qx_userinfo”,关联表中操作日志的表格包括若干子表,包括操作员代码和用户信息等,然后保存到table_table.txt文本中,作为后面建立数据过滤分析使用,用于建立多表关联。
根据数据整理生成的数据源生成索引模型组的过程具体包括,参见图3,是本发明实施例提供的一种索引模型组构建的流程示意图;索引模型组包括数据表索引模型、字段索引模型、统计分析索引模型、排序索引模型和条件索引模型;
索引模型组生成过程为:
使用FST数据结构,参见图4,是本发明实施例提供的FST数据结构的索引结构示意图,例如使用索引工具lucene,图中,字母a、m、p、t、s、o、l、h和r分别表示不同地字符串,参见图5,是本发明实施例提供的索引工具lucene生成的FST结构示意图,以ababzabbccbb这三个字符串为例,生成FST结构;
数据表索引模型:利用数据源table.txt文本建立模型,采用FST数据结构作为索引结构的索引工具lucene,建立table_model索引模型,以备数据分析使用;
字段索引模型:利用数据源field.txt文本建立模型,使用FST数据结构,例如使用索引工具lucene,建立field_model索引模型,以备数据分析使用;
统计分析索引模型:利用数据源stat.txt文本建立模型,使用FST数据结构,例如使用索引工具lucene,建立stat_model索引模型,以备数据分析使用;
排序索引模型:利用数据源sort.txt文本建立模型,使用FST数据结构,例如使用索引工具lucene,建立sort_model索引模型,以备数据分析使用;
条件索引模型:利用数据源cond.txt文本建立模型,使用FST数据结构,例如使用索引工具lucene,建立cond_model索引模型,以备数据分析使用;
通过预先对训练语句的同步词组和SQL关键词进行匹配,得到训练数据源,根据数据源采用FST数据结构作为索引结构的索引工具lucene,对数据源进行分析,确定各个词性的词组的索引模型,用于对自然语句进行转换,提高自然语句转换的准确率。
在本发明提供的又一实施例中,参见图6,是本发明实施例提供的一种自然语句进行转换过程的流程示意图;
获取不同词性的词组对应的关键词的过程具体包括:
在获取待转换的自然语句后,首先对自然语句进行精确分析,采用精确数据源分析,分析成功后,直接输出SQL语句,返回SQL;
分析失败后,需要采用索引模型组进行智能分析,对自然语句进行拆分句子,得到语句词组集合;然后依次对语句词组集合进行字段分析、表名分析、汇总函数分析、排序分析、条件分析、拼装SQL,得到SQL语句,返回SQL;
如精确分析失败,会进入智能查询,利用数据培训的五个索引模型进行SQL句子构造;
字段分析:通过field_model索引模型过滤出所述语句词组集合中数据表字段的词组,生成字段集合fs;
表名分析:根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts;
汇总函数分析:通过stat_model索引模型过滤出所述语句词组集合中的与统计关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,并返回状态标记statFlag;
排序分析:通过sort_model索引模型过滤出所述语句词组集合中的与排序关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,最后把相关词组进行排序标记,并返回状态标记sortFlag;
条件分析:通过cond_model索引模型过滤出所述语句词组集合中的与条件关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,通过数据分类过滤,查询与过滤出的词组对应的条件关键词,并返回状态标记condFlag;
通过五个索引模型对待转换的自然语句进行分析,分别对其中不同的词组进行标记,用于确定SQL语句的关键词,生成SQL语句。
在本发明提供的又一实施例中,所述步骤S3具体包括:
根据汇总标记statFlag、汇总标记sortFlag、汇总标记condFlag在对应的文本中查询,获取统计关键词、排序关键词和条件关键词;
将获取的统计关键词、排序关键词和条件关键词,与字段集合fs、表名集合ts进行拼接,获取SQL语句。
在本实施例具体实施时,通过五个索引模型确定不同的关键词,采用不同的汇总标记,在拼装时,根据汇总标记statFlag、汇总标记sortFlag、汇总标记condFlag在对应的文本中查询,获取统计关键词、排序关键词和条件关键词;
并将获取的统计关键词、排序关键词和条件关键词,与通过field_model索引模型和table_model索引模型生成的字段集合fs、表名集合ts进行拼接,获取SQL语句。
在本发明提供的又一实施例中,所述根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts,具体包括:
通过table_model索引模型过滤出所述语句词组集合中的与数据表名称匹配的词组,得到表名集合a;
通过table_field.txt文本对字段集合fs进行二次分析,过滤出语句词组集合中与数据表名称匹配的词组,得到表名集合b;
对表名集合a和表名集合b进行并集运算去重,并根据table_table.txt文本对并集运算后的表名集合内的多张数据表建立关联,生成表名集合ts。
在本实施例具体实施时,表名分析的过程具体包括:
通过table_model索引模型过滤出语句词组集合中的与数据表名称匹配的词组,得到表名集合a;通过table_field.txt文本对字段集合fs进行二次分析,过滤出语句词组集合中与数据表名称匹配的词组,得到表名集合b;
对表名集合a和表名集合b进行并集运算去重,并根据table_table.txt文本对并集运算后的表名集合内的多张数据表建立关联,生成表名集合ts。
在本发明提供的又一实施例中,在获取待转换的自然语句后,所述方法还包括:
采用余弦相似度算法,计算预建的精确数据源中的每一SQL语句与所述自然语句的相似度,确定相似度最高的SQL语句作为备选语句,所述精确数据源包括不同的自然语句和SQL语句的一一对应关系;
当备选语句的相似度不小于预设的第一阈值时,将所述备选语句确定为所述自然语句转换后的SQL语句。
在本实施例具体实施时,进行精确分析的过程包括:
其中,Ai为自然语句的词频向量A中的特征:词频向量A:(1,1,2,1,1,1,0,0,0);Bi为SQL语言的词频向量B中的特征,词频向量B:(1,1,1,0,1,1,1,1,1);n为词频向量中特征数量;cosƟ为计算的余弦值,用于表征相似度;
确定相似度最高的SQL语句作为备选语句,所述精确数据源包括不同的自然语句和SQL语句的一一对应关系,精确数据员预先建立过程包括:
精确查询整理是针对单独的训练语句的,生成一个训练语句与SQL语句的对应表,例如“统计一下用户人数 !# select count(*) from t_qx_userinfo”;“统计一下用户人数”这一训练语句对应了后面的SQL语句,中间用!#进行分离,然后保存到accurate.txt中,作为精确查询的精确数据源;
当备选语句的相似度不小于预设的第一阈值时,判断精确分析成功,将所述备选语句确定为所述自然语句转换后的SQL语句,第一阈值可根据实际情况设定。
当备选语句的相似度小于预设的第一阈值时,判断精确分析失败,采用索引模型组对待转换的自然语句进行智能分析;
通过精确分析进行查询语言转换,提高转换效率。
在本发明提供的又一实施例中,参见图7,是本发明实施例提供一种数据库查询语言转换装置的结构示意图,所述装置包括:
拆分模块,用于获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;
分析模块,用于采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;
拼装模块,用于对获取的不同词性的关键词进行拼装,得到SQL语句。
需要说明的是,本发明实施例提供的一种数据库查询语言转换装置用于执行上述实施例的一种数据库查询语言转换方法的所有流程步骤,两者的工作原理和有益效果一一对应,因而不再赘述。
参见图8,是本发明实施例提供的一种终端设备的结构示意图。该实施例的终端设备包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如数据库查询语言转换程序。所述处理器执行所述计算机程序时实现上述各个数据库查询语言转换方法实施例中的步骤,例如图1所示的步骤S1~S3。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。例如,所述计算机程序可以被分割成代码上传模块、软件打包模块、软件存储模块、设备连接模块和设备测试模块,各模块具体功能再次不作赘述。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是终端设备的示例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (8)
1.一种数据库查询语言转换方法,其特征在于,所述方法包括:
获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;
采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;
对获取的不同词性的关键词进行拼装,得到SQL语句;
所述索引模型组的训练过程具体包括:
获取训练语句和SQL关键词;
将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源;
采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型;
将不同词性的词语转化生成的索引模型的集合作为所述索引模型组;
所述将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源,具体包括:
将所述训练语句中预先标记为数据表名称的词组和对应的数据表名称进行匹配,并对应存储到table.txt文本中,作为数据表名称的数据源;
将所述训练语句中预先标记为数据表字段的词组和对应的数据表字段进行匹配,并对应存储到field.txt文本中,作为数据表字段的数据源;
将所述训练语句中预先标记为统计关键词的词组和对应的统计关键词进行匹配,并对应存储到stat.txt文本中,作为统计关键词的数据源;
将所述训练语句中预先标记为排序关键词的词组和对应的排序关键词进行匹配,并对应存储到sort.txt文本中,作为排序关键词的数据源;
将所述训练语句中预先标记为条件关键词的词组和对应的条件关键词进行匹配,并对应存储到cond.txt文本中,作为条件关键词的数据源;
将数据表名称和该数据表中的所有数据表字段进行匹配,并对应存储到table_field.txt文本中,作为数据表的数据源;
将数据表名称和该数据表中对应的子数据表名称进行匹配,并对应存储到table_table.txt文本中,作为数据表关联的数据源;
所述采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型,具体包括:
采用FST数据结构作为索引结构的索引工具lucene,根据table.txt文本的数据建立table_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据field.txt文本的数据建立field_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据stat.txt文本的数据建立stat_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据sort.txt文本的数据建立sort_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据cond.txt文本的数据建立cond_model索引模型。
2.如权利要求1所述的数据库查询语言转换方法,其特征在于,所述采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词,具体包括:
通过field_model索引模型过滤出所述语句词组集合中数据表字段的词组,生成字段集合fs;
根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts;
通过stat_model索引模型过滤出所述语句词组集合中的与统计关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,对过滤出的词组对应的统计关键词作汇总标记statFlag;
通过sort_model索引模型过滤出所述语句词组集合中的与排序关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,对过滤出的词组对应的排序关键词作汇总标记sortFlag;
通过cond_model索引模型过滤出所述语句词组集合中的与条件关键词匹配的词组,并通过字段集合fs和表名集合ts进行字段分析,通过数据分类过滤,查询与过滤出的词组对应的条件关键词,将查询出的条件关键词作汇总标记condFlag。
3.如权利要求2所述的数据库查询语言转换方法,其特征在于,所述对获取的不同词性的关键词进行拼装,得到SQL语句,具体包括:
根据汇总标记statFlag、汇总标记sortFlag、汇总标记condFlag在对应的文本中查询,获取统计关键词、排序关键词和条件关键词;
将获取的统计关键词、排序关键词和条件关键词,与字段集合fs、表名集合ts进行拼接,获取SQL语句。
4.如权利要求3所述的数据库查询语言转换方法,其特征在于,所述根据table_model索引模型、table_field.txt文本和table_table.txt文本对所述语句词组进行过滤分析,生成表名集合ts,具体包括:
通过table_model索引模型过滤出所述语句词组集合中的与数据表名称匹配的词组,得到表名集合a;
通过table_field.txt文本对字段集合fs进行二次分析,过滤出语句词组集合中与数据表名称匹配的词组,得到表名集合b;
对表名集合a和表名集合b进行并集运算去重,并根据table_table.txt文本对并集运算后的表名集合内的多张数据表建立关联,生成表名集合ts。
5.如权利要求1所述的数据库查询语言转换方法,其特征在于,在获取待转换的自然语句后,所述方法还包括:
采用余弦相似度算法,计算预建的精确数据源中的每一SQL语句与所述自然语句的相似度,确定相似度最高的SQL语句作为备选语句,所述精确数据源包括不同的自然语句和SQL语句的一一对应关系;
当备选语句的相似度不小于预设的第一阈值时,将所述备选语句确定为所述自然语句转换后的SQL语句。
6.一种数据库查询语言转换装置,其特征在于,所述装置包括:
拆分模块,用于获取待转换的自然语句,根据语法结构对所述自然语句进行拆分,获取语句词组集合;
分析模块,用于采用预先训练的得到的索引模型组对所述语句词组集合进行匹配分析,获取不同词性的词组对应的关键词;所述索引模型组中包括不同词性的索引模型,分别对应所述语句词组集合中不同词性的词组与SQL关键词的匹配关系;
拼装模块,用于对获取的不同词性的关键词进行拼装,得到SQL语句;
所述装置还包括模型训练模块,具体用于:
获取训练语句和SQL关键词;
将所述训练语句中不同词性的词组和对应的SQL关键词进行匹配,生成不同词性的词组对应的数据源;
采用FST数据结构的索引工具,将不同词性的词组的数据源转化成对应的索引模型;
将不同词性的词语转化生成的索引模型的集合作为所述索引模型组;
进一步的,所述模型训练模块具体还用于:
将所述训练语句中预先标记为数据表名称的词组和对应的数据表名称进行匹配,并对应存储到table.txt文本中,作为数据表名称的数据源;
将所述训练语句中预先标记为数据表字段的词组和对应的数据表字段进行匹配,并对应存储到field.txt文本中,作为数据表字段的数据源;
将所述训练语句中预先标记为统计关键词的词组和对应的统计关键词进行匹配,并对应存储到stat.txt文本中,作为统计关键词的数据源;
将所述训练语句中预先标记为排序关键词的词组和对应的排序关键词进行匹配,并对应存储到sort.txt文本中,作为排序关键词的数据源;
将所述训练语句中预先标记为条件关键词的词组和对应的条件关键词进行匹配,并对应存储到cond.txt文本中,作为条件关键词的数据源;
将数据表名称和该数据表中的所有数据表字段进行匹配,并对应存储到table_field.txt文本中,作为数据表的数据源;
将数据表名称和该数据表中对应的子数据表名称进行匹配,并对应存储到table_table.txt文本中,作为数据表关联的数据源;
采用FST数据结构作为索引结构的索引工具lucene,根据table.txt文本的数据建立table_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据field.txt文本的数据建立field_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据stat.txt文本的数据建立stat_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据sort.txt文本的数据建立sort_model索引模型;
采用FST数据结构作为索引结构的索引工具lucene,根据cond.txt文本的数据建立cond_model索引模型。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至5中任意一项所述的数据库查询语言转换方法。
8.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任意一项所述的数据库查询语言转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210977957.6A CN115080603B (zh) | 2022-08-16 | 2022-08-16 | 一种数据库查询语言转换方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210977957.6A CN115080603B (zh) | 2022-08-16 | 2022-08-16 | 一种数据库查询语言转换方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115080603A CN115080603A (zh) | 2022-09-20 |
CN115080603B true CN115080603B (zh) | 2023-01-17 |
Family
ID=83245168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210977957.6A Active CN115080603B (zh) | 2022-08-16 | 2022-08-16 | 一种数据库查询语言转换方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115080603B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252533A (zh) * | 2014-09-12 | 2014-12-31 | 百度在线网络技术(北京)有限公司 | 搜索方法和搜索装置 |
CN106227774A (zh) * | 2016-07-15 | 2016-12-14 | 海信集团有限公司 | 信息搜索方法及装置 |
CN111159330A (zh) * | 2018-11-06 | 2020-05-15 | 阿里巴巴集团控股有限公司 | 一种数据库查询语句的生成方法及装置 |
CN111177184A (zh) * | 2019-12-24 | 2020-05-19 | 深圳壹账通智能科技有限公司 | 基于自然语言的结构化查询语言转换方法、及其相关设备 |
CN111459967A (zh) * | 2020-03-03 | 2020-07-28 | 深圳壹账通智能科技有限公司 | 结构化查询语句生成方法、装置、电子设备及介质 |
CN114416780A (zh) * | 2021-12-08 | 2022-04-29 | 北京滴普科技有限公司 | 一种通过自然语言做数据探索分析的算法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140337355A1 (en) * | 2013-05-13 | 2014-11-13 | Gnoetics, Inc. | Indexed Natural Language Processing |
CN109947792A (zh) * | 2017-11-22 | 2019-06-28 | 蓝盾信息安全技术股份有限公司 | 一种基于数据库引擎的智能sql检索关键词技术 |
US11550783B2 (en) * | 2019-04-18 | 2023-01-10 | Sap Se | One-shot learning for text-to-SQL |
US11734510B2 (en) * | 2020-08-27 | 2023-08-22 | Bayerische Motoren Werke Aktiengesellschaft | Natural language processing of encoded question tokens and encoded table schema based on similarity |
CN114722069A (zh) * | 2022-04-07 | 2022-07-08 | 平安科技(深圳)有限公司 | 语言转换方法和装置、电子设备及存储介质 |
-
2022
- 2022-08-16 CN CN202210977957.6A patent/CN115080603B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252533A (zh) * | 2014-09-12 | 2014-12-31 | 百度在线网络技术(北京)有限公司 | 搜索方法和搜索装置 |
CN106227774A (zh) * | 2016-07-15 | 2016-12-14 | 海信集团有限公司 | 信息搜索方法及装置 |
CN111159330A (zh) * | 2018-11-06 | 2020-05-15 | 阿里巴巴集团控股有限公司 | 一种数据库查询语句的生成方法及装置 |
CN111177184A (zh) * | 2019-12-24 | 2020-05-19 | 深圳壹账通智能科技有限公司 | 基于自然语言的结构化查询语言转换方法、及其相关设备 |
CN111459967A (zh) * | 2020-03-03 | 2020-07-28 | 深圳壹账通智能科技有限公司 | 结构化查询语句生成方法、装置、电子设备及介质 |
CN114416780A (zh) * | 2021-12-08 | 2022-04-29 | 北京滴普科技有限公司 | 一种通过自然语言做数据探索分析的算法 |
Non-Patent Citations (1)
Title |
---|
一种基于预先索引的关系数据库关键词搜索方法;葛唯益等;《计算机科学》;20160415;第43卷(第04期);第182-187页 * |
Also Published As
Publication number | Publication date |
---|---|
CN115080603A (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110399457B (zh) | 一种智能问答方法和系统 | |
CN110110041B (zh) | 错词纠正方法、装置、计算机装置及存储介质 | |
US10503828B2 (en) | System and method for answering natural language question | |
KR102491172B1 (ko) | 자연어 질의응답 시스템 및 그 학습 방법 | |
CN112069298A (zh) | 基于语义网和意图识别的人机交互方法、设备及介质 | |
CN111125334A (zh) | 一种基于预训练的搜索问答系统 | |
CN104199965A (zh) | 一种语义信息检索方法 | |
CN111414763A (zh) | 一种针对手语计算的语义消歧方法、装置、设备及存储装置 | |
CN111190920B (zh) | 一种基于自然语言的数据交互查询方法及其系统 | |
CN112580357A (zh) | 自然语言查询的语义解析 | |
CN109508441B (zh) | 通过自然语言实现数据统计分析的方法、装置及电子设备 | |
CN110597844A (zh) | 异构数据库数据统一访问方法及相关设备 | |
CN112783825A (zh) | 数据归档方法、装置、计算机装置及存储介质 | |
CN112380848B (zh) | 文本生成方法、装置、设备及存储介质 | |
CN113297251A (zh) | 多源数据检索方法、装置、设备及存储介质 | |
CN117251455A (zh) | 一种基于大模型的智能报表生成方法及其系统 | |
JP4005343B2 (ja) | 情報検索システム | |
CN110019714A (zh) | 基于历史结果的多意图查询方法、装置、设备及存储介质 | |
CN112328738A (zh) | 语音检索方法、终端设备及可读存储介质 | |
CN111831624A (zh) | 数据表创建方法、装置、计算机设备及存储介质 | |
CN111460114A (zh) | 检索方法、装置、设备及计算机可读存储介质 | |
CN115080603B (zh) | 一种数据库查询语言转换方法、装置、设备及存储介质 | |
CN114842982B (zh) | 一种面向医疗信息系统的知识表达方法、装置及系统 | |
CN110705285A (zh) | 一种政务文本主题词库构建方法、装置、服务器及可读存储介质 | |
CN115114420A (zh) | 一种知识图谱问答方法、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |