CN113868252A - 数据库模式匹配方法及装置、sql查询语句生成方法 - Google Patents

数据库模式匹配方法及装置、sql查询语句生成方法 Download PDF

Info

Publication number
CN113868252A
CN113868252A CN202111134883.1A CN202111134883A CN113868252A CN 113868252 A CN113868252 A CN 113868252A CN 202111134883 A CN202111134883 A CN 202111134883A CN 113868252 A CN113868252 A CN 113868252A
Authority
CN
China
Prior art keywords
natural language
target
database
question data
term
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.)
Pending
Application number
CN202111134883.1A
Other languages
English (en)
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PEOPLE'S BANK OF CHINA NATIONAL CLEARING CENTER
Original Assignee
PEOPLE'S BANK OF CHINA NATIONAL CLEARING CENTER
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by PEOPLE'S BANK OF CHINA NATIONAL CLEARING CENTER filed Critical PEOPLE'S BANK OF CHINA NATIONAL CLEARING CENTER
Priority to CN202111134883.1A priority Critical patent/CN113868252A/zh
Publication of CN113868252A publication Critical patent/CN113868252A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供数据库模式匹配方法及装置、SQL查询语句生成方法,数据库模式匹配方法包括:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与自然语言问题数据匹配的目标数据库模式。本申请能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性及效率,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。

Description

数据库模式匹配方法及装置、SQL查询语句生成方法
技术领域
本申请涉及数据处理技术领域,具体涉及数据库模式匹配方法及装置、SQL查询语句生成方法。
背景技术
自然语言查询任务是自然语言处理中语义解析领域的一个重要方向,主要目的是让无数数据库技术背景的业务人员能够快速查询数据,主要方法是将自然语言问题和相关数据库模式作为模型输入,从而输出对应的SQL查询语句,实现数据查询意图。而为了提高SQL查询语句生成的准确率,需要将自然语言问题与数据库模式进而关联。
目前,现有的自然语言问题与数据库模式的匹配方式可以为直接进行数据库表名或字段名匹配,也可以为进行值匹配;但这些方式并不适合用于自然语言问题与数据库模式分别采用不同类型的命名语言的情形,比如数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,因此,直接进行数据库表名或字段名匹配的方式易存在数据库模式匹配成功率低等问题;而进行值匹配的方式应用范围有限,仅在简单数据库模式(如只有一个时间字段)时效果较好,但在复杂数据库模式及一般字段上不具备可用性。
因此,无论是上述哪一种自然语言问题与数据库模式的匹配方式,均存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求的问题。
发明内容
针对现有技术中的问题,本申请提供一种数据库模式匹配方法及装置、SQL查询语句生成方法,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性及效率,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
为解决上述技术问题,本申请提供以下技术方案:
第一方面,本申请提供一种数据库模式匹配方法,包括:
建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;
在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
进一步地,在所述在预设的各个数据库的表和字段各自对应的自然语言术语别名中,查找与所述目标自然语言表达信息相匹配的目标自然语言术语别名之前,还包括:
基于预设的自然语言标准化术语命名规则,为预设的各个数据库中表的唯一标识以及各个表中包含的各个字段的唯一标识分别设置至少一个自然语言术语别名;
将各个表的唯一标识和各个所述表中包含的各个字段的唯一标识各自对应的自然语言术语别名存储至数据库模式配置文件。
进一步地,还包括:
若相同的表中包含有多个相似字段,则将各个所述相似字段各自对应的自然语言术语别名进行区别化设置,并基于对应的区别化设置结果更新所述数据库模式配置文件。
进一步地,所述建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,包括:
从自然语言问题数据中提取待查询的目标数据库中的目标表对应的目标表自然语言表达信息;
将所述目标表自然语言表达信息确定为所述自然语言问题数据对应的查询对象;
生成包含有所述自然语言问题数据对应的查询对象的目标查询事件。
进一步地,在所述在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名之前,还包括:
若所述自然语言问题数据中还包含有待查询的目标字段的对应的目标字段自然语言表达信息,则将该目标字段自然语言表达信息确定为所述自然语言问题数据对应的查询内容;
将所述自然语言问题数据对应的查询内容添加至所述自然语言问题数据对应的目标查询事件中。
进一步地,在所述在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名之前,还包括:
若所述自然语言问题数据中还包含有待查询的条件字段及该条件字段的值对应的目标条件字段自然语言表达信息,则将该目标条件字段自然语言表达信息确定为所述自然语言问题数据对应的约束条件;
将所述自然语言问题数据对应的约束条件添加至所述自然语言问题数据对应的目标查询事件中。
第二方面,本申请提供一种SQL查询语句生成方法,包括:
接收SQL查询语句生成请求,并自该SQL查询语句生成请求中提取对应的自然语言问题数据;
执行所述数据库模式匹配方法;
将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句。
第三方面,本申请提供一种数据库模式匹配装置,包括:
查询事件构建模块,用于建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;
数据库模式匹配模块,用于在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
第四方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的数据库模式匹配方法,或者,所述处理器执行所述计算机程序时实现所述的SQL查询语句生成方法。
第五方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的数据库模式匹配方法,或者,所述计算机程序被处理器执行时实现所述的SQL查询语句生成方法。
由上述技术方案可知,本申请提供的一种数据库模式匹配方法及装置、SQL查询语句生成方法,其中的数据库模式匹配方法包括:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式;通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是基于名称匹配的数据库模式链接的举例示意图。
图2是基于名称匹配的数据库模式链接失败的举例示意图。
图3是基于值查询的数据库模式链接的举例示意图。
图4是基于值查询的数据库模式链接失败的举例示意图。
图5是本申请实施例中的数据库模式匹配装置与客户端设备之间的关系示意图。
图6是本申请实施例中的数据库模式匹配方法的第一种流程示意图。
图7是本申请实施例中的数据库模式匹配方法的第二种流程示意图。
图8是本申请实施例中的数据库模式匹配方法的第三种流程示意图。
图9是本申请实施例中的SQL查询语句生成方法的流程示意图。
图10是本申请实施例中的数据库模式匹配装置的结构示意图。
图11是本申请实施例中的SQL查询语句生成系统的结构示意图。
图12是本申请应用实例提供的数据库模式链接方法的逻辑示意图。
图13是本申请应用实例提供的数据库模式设计过程的执行逻辑示意图。
图14是本申请应用实例提供的数据库模式链接处理流程示意图。
图15是本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了提高SQL查询语句生成的准确率,需要将自然语言问题与数据库模式进行关联,因此准确地识别自然语言问题涉及的表名、字段名尤为重要。目前常见的数据库模式链接有基于名称匹配和基于值查询两种方法,在自然语言问题和数据库模式为同一语言时是可行的。例如Spider数据集、Wiki数据集的自然语言问题和数据库模式均为英文,NL2SQL挑战赛的TableQA数据集是自然语言问题和数据库模式均为中文。但这在中文语言环境实用场景中,通常会存在一些问题。
在基于名称匹配的数据库模式链接或匹配的方式中,基于名称匹配的数据库模式链接是指在自然语言问题中精确或部分地提及数据库表名、字段名等信息,通过文本匹配等简单方法即可有效识别。在自然语言查询任务中,常采用n-grams算法实现基于名称匹配的数据库模式链接,即从大到小设置滑动窗口,自左向右截取自然语言问题中的字符串并与数据库的表名、字段名进行比较,识别出完全匹配或部分匹配的数据库模式。
以图1为例,设置滑动窗口宽度为2,依次截取“what are”、“are the”、“thename”、……、“the battles”、……、“bulgarian commander”等,其中“bulgariancommander”完全匹配到字段名,“the name”部分匹配到字段名,“the battles”部分匹配到表名。
然而,由于自然语言问题中很少显示提及数据库表名或字段名,通常将相关信息省略或使用其他方式表达。特别地,在中文语言环境实用场景中,数据库模式绝大多数采用英文命名,自然语言问题却是中文的,这给数据库模式链接带来了很大挑战。参见图2,中文自然语言问题中的支付交易、发起行、业务类型等,无法与数据库中的payment info(账单信息)表、sendbank(发起银行)字段、biztype(业务类型)字段准确关联。
而在基于值查询的数据库模式链接的方式中,在自然语言问题中往往较多地会出现数据库某些列的值作为数据筛选条件,因此如何基于值查询,识别自然语言问题中的信息,并对应到具体数据库字段也是自然语言查询任务中的重要研究内容。
以图3为例,识别出自然语言问题中的“Boril”是筛选条件后,利用数据库查询或先验知识图谱,将其关联到对应的bulgarian_commander列上,以此构建SQL查询语句的条件语句。
然而,基于值查询的数据库模式链接需要大量背景知识,而数据库中存储的数据就是最有效的背景知识,因此在研究阶段一般可以将值代入数据库字段中依次进行查询验证。可将“Boril”代入一个简单的查询语句(如select count()from battle where col_name=′Boril′)中,依次替换列名,根据查询结果判断应该使用哪一列。为了提高基于值查询数据库模式链接的准确度和效率,研究人员做了大量尝试,如融合字段类型、利用外部知识库、引入概念网络等。
然而,基于值查询的数据库模式链接方式通常应用范围有限,仅在简单数据库模式(如只有一个时间字段)时效果较好,但在复杂数据库模式及一般字段上不具备可用性。参见图4,识别出来A行(即银行A)是筛选条件后,无法确定应该对应到sendbank、recvbank中的具体哪一列。依次代入各字段中进行查询验证,能查询出相当规模的数据,并且在大数据量情况下效率极低,无法满足实用需求。
基于此,针对现有的自然语言问题与数据库模式的匹配方式存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求的问题,本申请实施例提供一种数据库模式匹配方法,建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式;通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
基于上述内容,本申请还提供一种用于实现本申请一个或多个实施例中提供的数据库模式匹配方法的数据库模式匹配装置,该数据库模式匹配装置可以为一服务器,参见图5,该数据库模式匹配装置可以自行或通过第三方服务器等与各个客户端设备之间依次通信连接,数据库模式匹配装置可以接收客户端设备发送的数据库模式匹配指令或SQL查询语句生成请求,并根据该数据库模式匹配指令或SQL查询语句生成请求建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式,而后可以将与所述自然语言问题数据匹配的目标数据库模式发送至客户端设备进行显示,也可以将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句,数据库模式匹配装置还可以将目标SQL查询语句发送至用户的客户端设备等。
在另一种实际应用情形中,前述的数据库模式匹配装置进行数据库模式匹配的部分可以在如上述内容的服务器中执行,也可以所有的操作都在所述用户端设备中完成。具体可以根据所述用户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述用户端设备中完成,所述用户端设备还可以包括处理器,用于数据库模式匹配的具体处理。
可以理解的是,所述移动终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、个人数字助理(PDA)、车载设备、智能穿戴设备等任何能够装载应用的移动设备。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
上述的移动终端可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
上述服务器与所述移动终端之间可以使用任何合适的网络协议进行通信,包括在本申请提交日尚未开发出的网络协议。所述网络协议例如可以包括TCP/IP协议、UDP/IP协议、HTTP协议、HTTPS协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的RPC协议(Remote Procedure Call Protocol,远程过程调用协议)、REST协议(Representational State Transfer,表述性状态转移协议)等。
具体通过下述各个实施例及应用实例分别进行详细说明。
为了解决现有的自然语言问题与数据库模式的匹配方式存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求的问题,本申请提供一种数据库模式匹配方法的实施例,参见图6,基于数据库模式匹配装置执行的所述数据库模式匹配方法具体包含有如下内容:
步骤100:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
可以理解的是,自然语言是指一种自然地随文化而演化的语言。例如,汉语、英语、日语都是自然语言的例子,这一种用法可见于自然语言处理一词中。其中,自然语言问题数据是指用户通过客户端设备等编辑及发出的有自然语言构成的问题数据。在本申请实施例中,本申请提供的数据库模式匹配方法尤其可以适用于采用非英文的自然语言问题数据,使得在自然语言问题数据于数据库模式采用的语言类型不同的情况下,能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率。
在步骤100中,目标查询事件的建立目的是为了提高在下述步骤200中查询与目标查询事件相匹配的目标自然语言术语别名的效率及便捷性,是一种标准化处理手段,通过将自然语言问题数据所包含的各类信息按照预设的查询事件模板进行信息筛选,仅保留其中符合查询事件模板要求的信息,以形成当前的自然语言问题数据对应的以目标自然语言表达的目标查询事件。在一种举例中,所述目标查询事件可以包含有待查询的目标数据库中的目标表对应的目标表自然语言表达信息。
步骤200:在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
可以理解的是,各个数据库是指预先存储且可用于进行自然语言问题数据匹配的数据库,所述数据库模式包含有与所述自然语言问题数据匹配的某一数据库中的数据表的模式信息;也可以包含有与所述自然语言问题数据匹配的某一字段、该字段所在的表(即数据表)以及该表所在的数据库的模式信息等。所述数据库中可以包含有任意数量的表,且每个表中均可以包含有任意数量的字段。
在步骤200中,自然语言术语别名是在步骤200或步骤100之前预先设置的,包含有各个数据库中的各个表分别对应的自然语言术语别名,以及各个表中的各个字段分别对应的自然语言术语别名。可以理解的是,各个数据库中表和字段各自对应的自然语言术语别名均需为与自然语言问题数据采用相同类型的自然语言;当然,在前期设置自然语言术语别名时,可以设置多种类型的自然语言术语别名以进一步提高数据库模式匹配方法的适用广泛性,但在步骤200使用时,需要使用与当前自然语言问题数据类型相同的自然语言术语别名。
例如,分别预先设置各个数据库中表和字段各自对应的日语术语别名、法语术语别名和中文术语别名;后续在步骤100中处理的自然语言问题数据为中文问题数据时,则调取各个数据库中表和字段各自对应的中文术语别名,并在这些中文术语别名中找到与中文问题数据匹配的目标中文术语别名。
从上述描述可知,本申请实施例提供的数据库模式匹配方法,通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
为了提高查找与所述目标自然语言表达信息相匹配的目标自然语言术语别名的效率及可靠性,在本申请提供的数据库模式匹配方法的一个实施例,参见图7,所述数据库模式匹配方法的步骤100之前具体包含有如下内容:
步骤010:基于预设的自然语言标准化术语命名规则,为预设的各个数据库中表的唯一标识以及各个表中包含的各个字段的唯一标识分别设置至少一个自然语言术语别名。
步骤020:将各个表的唯一标识和各个所述表中包含的各个字段的唯一标识各自对应的自然语言术语别名存储至数据库模式配置文件。
具体来说,在数据库模式设计阶段,设计添加别名任务,即为所有数据库表名、字段名定义业务标准化术语的别名,别名的定义可以有效提高数据库字段设计不一致时的链接效果。
别名可以是一个,也可以有多个。特别的当数据库表、字段存在多种业务表达时,可采用多别名方式全部标注,从而提高识别率。
从上述描述可知,本申请实施例提供的数据库模式匹配方法,通过基于预设的自然语言标准化术语命名规则,为预设的各个数据库中表的唯一标识以及各个表中包含的各个字段的唯一标识分别设置至少一个自然语言术语别名,能够有效提高查找与所述目标自然语言表达信息相匹配的目标自然语言术语别名的效率及可靠性。
为了提高复杂数据库模式下的相似数据库表、字段的区分度,进一步提高识别率,在本申请提供的数据库模式匹配方法的一个实施例,参见图8,所述数据库模式匹配方法的步骤020之后以及步骤100之前还具体包含有如下内容:
步骤030:若相同的表中包含有多个相似字段,则将各个所述相似字段各自对应的自然语言术语别名进行区别化设置,并基于对应的区别化设置结果更新所述数据库模式配置文件。
具体来说,对于同一张库表中存在多个相似字段,应定义不同别名加以区分,从而提高复杂数据库模式下的相似数据库表、字段的区分度,进一步提高识别率。
从上述描述可知,本申请实施例提供的数据库模式匹配方法,通过将各个所述相似字段各自对应的自然语言术语别名进行区别化设置,并基于对应的区别化设置结果更新所述数据库模式配置文件,能够提高复杂数据库模式下的相似数据库表、字段的区分度,进一步提高识别率。
为了简化数据库模式匹配的难度,在本申请提供的数据库模式匹配方法的一个实施例,所述数据库模式匹配方法的步骤100具体包含有如下内容:
步骤110:从自然语言问题数据中提取待查询的目标数据库中的目标表对应的目标表自然语言表达信息;
步骤120:将所述目标表自然语言表达信息确定为所述自然语言问题数据对应的查询对象;
步骤130:生成包含有所述自然语言问题数据对应的查询对象的目标查询事件。
从上述描述可知,本申请实施例提供的数据库模式匹配方法,通过将所述目标表自然语言表达信息确定为所述自然语言问题数据对应的查询对象;生成包含有所述自然语言问题数据对应的查询对象的目标查询事件,能够简化数据库模式匹配的难度,进而进一步提高数据库模式匹配的效率。
为了进一步提高数据库模式匹配的效率及精确性,在本申请提供的数据库模式匹配方法的一个实施例,所述数据库模式匹配方法的步骤130和步骤200之间具体包含有如下内容:
步骤140:若所述自然语言问题数据中还包含有待查询的目标字段的对应的目标字段自然语言表达信息,则将该目标字段自然语言表达信息确定为所述自然语言问题数据对应的查询内容;
步骤150:将所述自然语言问题数据对应的查询内容添加至所述自然语言问题数据对应的目标查询事件中。
从上述描述可知,本申请实施例提供的数据库模式匹配方法,通过将所述自然语言问题数据对应的查询内容添加至所述自然语言问题数据对应的目标查询事件中,能够进一步提高数据库模式匹配的效率及精确性。
为了进一步提高数据库模式匹配的效率及精确性,在本申请提供的数据库模式匹配方法的一个实施例,所述数据库模式匹配方法的步骤130和步骤200之间还具体包含有如下内容:
步骤160:若所述自然语言问题数据中还包含有待查询的条件字段及该条件字段的值对应的目标条件字段自然语言表达信息,则将该目标条件字段自然语言表达信息确定为所述自然语言问题数据对应的约束条件;
步骤170:将所述自然语言问题数据对应的约束条件添加至所述自然语言问题数据对应的目标查询事件中。
可以理解的是,在数据库模式链接阶段,设计添加查询事件生成任务,即根据模型输入的自然语言问题和数据库模式元信息(与数据库模式设计阶段使用的业务标准化术语一致),生成查询事件的一般表示,简化数据库模式链接难度。
查询事件是一次自然语言查询任务的中间表示,包含查询对象、查询内容、约束条件,具体包含有如下内容:
(1)查询对象:即查询的目标数据库及目标表,不可空;
(2)查询内容:即查询的具体字段,可空(空值表示查询目标库表的全部字段);
(3)约束条件:即查询的条件字段及其值,可空(空值表示查询目标库表的全部数据)。
从上述描述可知,本申请实施例提供的数据库模式匹配方法,通过将所述自然语言问题数据对应的约束条件添加至所述自然语言问题数据对应的目标查询事件中,能够进一步提高数据库模式匹配的效率及精确性。
为了解决自然语言查询任务存在的现有的自然语言问题与数据库模式的匹配方式存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求,因此导致SQL查询语句生成的可靠性差、效率低及成功率低等问题,本申请基于上述的数据库模式匹配方法的实施例,还提供一种SQL查询语句生成方法的实施例,参见图9,基于SQL查询语句生成系统执行的所述SQL查询语句生成方法具体包含有如下内容:
步骤001:接收SQL查询语句生成请求,并自该SQL查询语句生成请求中提取对应的自然语言问题数据。
步骤100:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
步骤200:在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
步骤002:将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句。
本申请提供的SQL查询语句生成方法的实施例具体可以包含有执行上述实施例中的数据库模式匹配方法的实施例的处理流程,并不仅限于步骤100和步骤200,其他的处理流程在此不再赘述,可以参照上述各个数据库模式匹配方法实施例的详细描述。
从上述描述可知,本申请实施例提供的SQL查询语句生成方法,通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
从软件层面来说,为了解决现有的自然语言问题与数据库模式的匹配方式存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求的问题,本申请提供一种用于执行所述数据库模式匹配方法中全部或部分内容的数据库模式匹配装置的实施例,参见图10,所述数据库模式匹配装置具体包含有如下内容:
查询事件构建模块10,用于建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
可以理解的是,自然语言是指一种自然地随文化而演化的语言。例如,汉语、英语、日语都是自然语言的例子,这一种用法可见于自然语言处理一词中。其中,自然语言问题数据是指用户通过客户端设备等编辑及发出的有自然语言构成的问题数据。在本申请实施例中,本申请提供的数据库模式匹配方法尤其可以适用于采用非英文的自然语言问题数据,使得在自然语言问题数据于数据库模式采用的语言类型不同的情况下,能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率。
在查询事件构建模块10中,目标查询事件的建立目的是为了提高在下述步骤200中查询与目标查询事件相匹配的目标自然语言术语别名的效率及便捷性,是一种标准化处理手段,通过将自然语言问题数据所包含的各类信息按照预设的查询事件模板进行信息筛选,仅保留其中符合查询事件模板要求的信息,以形成当前的自然语言问题数据对应的以目标自然语言表达的目标查询事件。在一种举例中,所述目标查询事件可以包含有待查询的目标数据库中的目标表对应的目标表自然语言表达信息。
数据库模式匹配模块20,用于在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
可以理解的是,各个数据库是指预先存储且可用于进行自然语言问题数据匹配的数据库,所述数据库模式包含有与所述自然语言问题数据匹配的某一数据库中的数据表的模式信息;也可以包含有与所述自然语言问题数据匹配的某一字段、该字段所在的表(即数据表)以及该表所在的数据库的模式信息等。所述数据库中可以包含有任意数量的表,且每个表中均可以包含有任意数量的字段。
在数据库模式匹配模块20中,自然语言术语别名是在数据库模式匹配模块20执行之前预先设置的,包含有各个数据库中的各个表分别对应的自然语言术语别名,以及各个表中的各个字段分别对应的自然语言术语别名。可以理解的是,各个数据库中表和字段各自对应的自然语言术语别名均需为与自然语言问题数据采用相同类型的自然语言;当然,在前期设置自然语言术语别名时,可以设置多种类型的自然语言术语别名以进一步提高数据库模式匹配方法的适用广泛性,但在数据库模式匹配模块20执行时,需要使用与当前自然语言问题数据类型相同的自然语言术语别名。
例如,分别预先设置各个数据库中表和字段各自对应的日语术语别名、法语术语别名和中文术语别名;后续在查询事件构建模块10中处理的自然语言问题数据为中文问题数据时,则调取各个数据库中表和字段各自对应的中文术语别名,并在这些中文术语别名中找到与中文问题数据匹配的目标中文术语别名。
本申请提供的数据库模式匹配装置的实施例具体可以用于执行上述实施例中的数据库模式匹配方法的实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
从上述描述可知,本申请实施例提供的数据库模式匹配装置,通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
从软件层面来说,为了解决自然语言查询任务存在的现有的自然语言问题与数据库模式的匹配方式存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求,因此导致SQL查询语句生成的可靠性差、效率低及成功率低等问题,本申请提供一种用于执行所述SQL查询语句生成方法中全部或部分内容的SQL查询语句生成系统的实施例,参见图11,所述SQL查询语句生成系统具体包含有如下内容:
请求接收模块01,用于接收SQL查询语句生成请求,并自该SQL查询语句生成请求中提取对应的自然语言问题数据。
查询事件构建模块10,用于建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;
数据库模式匹配模块20,用于在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
SQL语句生成模块02,用于将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句。
本申请提供的SQL查询语句生成系统的实施例具体可以包含有上述实施例中的数据库模式匹配装置的实施例的各项功能,其功能在此不再赘述,可以参照上述数据库模式匹配装置实施例的详细描述。
从上述描述可知,本申请实施例提供的SQL查询语句生成系统,通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
为了进一步说明本方案,本申请应用实例提供一种实用、精准、高效的数据库模式链接方法,在自然语言查询任务实际应用中,通常都是复杂的数据库模式、大规模的数据存储、杂乱无章的自然语言问题,其面临的主要技术问题是在自然语言问题与数据设计不匹配时,特别是在中文语言环境实用场景中,自然语言问题和数据库模式为不同语言时,如何提高数据库模式链接准确度和效率。
本申请应用实例在基于名称匹配的数据库模式链接方法基础上,为数据库表名、字段名增加业务标准化术语别名,在数据库模式链接时,可通过字符串匹配等简单方法或知识图谱等高级方法,将自然语言问题与别名进行匹配,进一步链接数据库模式。
本申请应用实例提供的数据库模式链接方法在基于名称匹配的数据库模式链接方法基础上进行改进,解决了基于名称匹配方法的数据库模式设计和自然语言不匹配问题,同时避免了基于值查询方法的全库检索及相似字段区分等问题,具备更高实用性。
参见图12,在数据库模式设计阶段,设计添加别名任务,即为所有数据库表名、字段名定义业务标准化术语的别名,别名的定义可以有效提高数据库字段设计不一致时的链接效果。
别名可以是一个,也可以有多个。特别的当数据库表、字段存在多种业务表达时,可采用多别名方式全部标注,从而提高识别率;对于同一张库表中存在多个相似字段,应定义不同别名加以区分,从而提高复杂数据库模式下的相似数据库表、字段的区分度,进一步提高识别率。
在数据库模式链接阶段,设计添加查询事件生成任务,即根据模型输入的自然语言问题和数据库模式元信息(与数据库模式设计阶段使用的业务标准化术语一致),生成查询事件的一般表示,简化数据库模式链接难度。
查询事件是一次自然语言查询任务的中间表示,包含查询对象、查询内容、约束条件。
查询对象:即查询的目标数据库及目标表,不可空;
查询内容:即查询的具体字段,可空(空值表示查询目标库表的全部字段);
约束条件:即查询的条件字段及其值,可空(空值表示查询目标库表的全部数据)。
本申请应用实例提供的数据库模式链接方法的具体实现流程如下:
(1)数据库模式设计过程
参见图13,数据库模式设计过程说明如下:
步骤11:梳理原始数据库模式,标注出数据库模式中的主、外键,特别地,对于存在外键关系但没有显示设置外键的需要显示标注;
步骤12:使用业务标准化术语,定义数据库模式的所有表、字段的别名,并完善数据库模式;
步骤13:编制自然语言查询模型输入所需的数据库模式配置文件;
在数据库模式变化时,重新执行以上第11至13步骤,更新数据库模式配置文件;在业务术语使用情况变化时,重新执行以上第12至13步骤,更新数据库模式配置文件。
(2)数据库模式链接处理流程
参见图14,数据库模式链接处理流程说明如下:
步骤21:输入初始自然语言问题,以“查询A行发起的B业务的支付交易”为例;
步骤22:执行查询事件生成任务,将自然语言问题中提及的数据库表名、字段名及两者别名信息识别出来,本样例中识别出查询对象为“支付交易”,查询内容为空,约束条件包括发起行、业务类型;
步骤23:执行数据库模式链接任务,将上述第22步骤识别的别名信息链接到原始数据库表名、字段名,本样例中首先将支付交易链接到payment info表,将发起行链接到该表sendbank字段,将业务类型链接到该表biztype字段;
第22、23步骤任务共同作用,完成自然语言问题与数据库模式的关联。
本申请应用实例不需要在自然语言问题中提及数据库模式信息(这在中文语言环境中通常是不可能的),也不需要引入大量背景知识或查询数据库数据(这在实用场景下通常是不可行的),即可以实现精准、高效的数据库模式链接。具体效果如下:
提出了一种实用的、简便可行的中文自然语言查询任务数据库模式链接方法,解决自然语言查询任务的自然语言问题和数据库模式不匹配导致无法链接问题。
从硬件层面来说,为了解决现有的自然语言问题与数据库模式的匹配方式存在无法同时满足数据库模式匹配的成功率要求、准确性要求、应用范围广泛性要求及效率要求的问题,本申请提供一种用于实现所述数据库模式匹配方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
图15为本申请实施例的电子设备9600的系统构成的示意框图。如图15所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图15是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
在一实施例中,数据库模式匹配功能可以被集成到中央处理器中。其中,中央处理器可以被配置为进行如下控制:
步骤100:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
步骤200:在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
或者,在另一实施例中,数据库模式匹配功能可以被集成到中央处理器中。
其中,中央处理器可以被配置为进行如下控制:
步骤001:接收SQL查询语句生成请求,并自该SQL查询语句生成请求中提取对应的自然语言问题数据。
步骤100:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
步骤200:在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
步骤002:将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句。
从上述描述可知,本申请实施例提供的电子设备,通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
在另一个实施方式中,数据库模式匹配装置可以与中央处理器9100分开配置,例如可以将数据库模式匹配装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现数据库模式匹配功能。
如图15所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图15中所示的所有部件;此外,电子设备9600还可以包括图15中没有示出的部件,可以参考现有技术。
如图15所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的数据库模式匹配方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的数据库模式匹配方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤100:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
步骤200:在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
又例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤001:接收SQL查询语句生成请求,并自该SQL查询语句生成请求中提取对应的自然语言问题数据。
步骤100:建立自然语言问题数据对应的以目标自然语言表达的目标查询事件。
步骤200:在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
步骤002:将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句。
从上述描述可知,本申请实施例提供的计算机可读存储介质,通过建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,能够有效简化匹配目标自然语言术语别名的查找过程,进而能够有效提高数据库模式匹配的效率;通过预先设置各个数据库中表和字段各自对应的自然语言术语别名,并查找与所述目标查询事件相匹配的目标自然语言术语别名,能够有效适用于数据库模式采用英文命名,而自然语言问题为非英文的中文、日文等其他自然语言的情形,能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,且不需要引入大量背景知识或查询数据库数据,即可以实现精准且高效的数据库模式匹配,进而能够有效提高自然语言问题数据与数据库模式之间的匹配成功率,并能够有效提高数据库模式匹配结果的准确性及可靠性;能够有效提高数据库模式过程的应用范围广泛性、实用性及效率,能够提高存在数据库模式匹配需求用户的用户体验,进而能够有效提高后续基于数据库模式匹配结果进行SQL查询语句生成的可靠性、准确性及效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种数据库模式匹配方法,其特征在于,包括:
建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;
在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
2.根据权利要求1所述的数据库模式匹配方法,其特征在于,在所述在预设的各个数据库的表和字段各自对应的自然语言术语别名中,查找与所述目标自然语言表达信息相匹配的目标自然语言术语别名之前,还包括:
基于预设的自然语言标准化术语命名规则,为预设的各个数据库中表的唯一标识以及各个表中包含的各个字段的唯一标识分别设置至少一个自然语言术语别名;
将各个表的唯一标识和各个所述表中包含的各个字段的唯一标识各自对应的自然语言术语别名存储至数据库模式配置文件。
3.根据权利要求2所述的数据库模式匹配方法,其特征在于,还包括:
若相同的表中包含有多个相似字段,则将各个所述相似字段各自对应的自然语言术语别名进行区别化设置,并基于对应的区别化设置结果更新所述数据库模式配置文件。
4.根据权利要求1所述的数据库模式匹配方法,其特征在于,所述建立自然语言问题数据对应的以目标自然语言表达的目标查询事件,包括:
从自然语言问题数据中提取待查询的目标数据库中的目标表对应的目标表自然语言表达信息;
将所述目标表自然语言表达信息确定为所述自然语言问题数据对应的查询对象;
生成包含有所述自然语言问题数据对应的查询对象的目标查询事件。
5.根据权利要求4所述的数据库模式匹配方法,其特征在于,在所述在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名之前,还包括:
若所述自然语言问题数据中还包含有待查询的目标字段的对应的目标字段自然语言表达信息,则将该目标字段自然语言表达信息确定为所述自然语言问题数据对应的查询内容;
将所述自然语言问题数据对应的查询内容添加至所述自然语言问题数据对应的目标查询事件中。
6.根据权利要求4或5所述的数据库模式匹配方法,其特征在于,在所述在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名之前,还包括:
若所述自然语言问题数据中还包含有待查询的条件字段及该条件字段的值对应的目标条件字段自然语言表达信息,则将该目标条件字段自然语言表达信息确定为所述自然语言问题数据对应的约束条件;
将所述自然语言问题数据对应的约束条件添加至所述自然语言问题数据对应的目标查询事件中。
7.一种SQL查询语句生成方法,其特征在于,包括:
接收SQL查询语句生成请求,并自该SQL查询语句生成请求中提取对应的自然语言问题数据;
执行权利要求1至6任一项所述的数据库模式匹配方法;
将所述自然语言问题数据及所述目标数据库模式输入预设的SQL查询语句生成模型中,以使该SQL查询语句生成模型输出所述自然语言问题数据对应的目标SQL查询语句。
8.一种数据库模式匹配装置,其特征在于,包括:
查询事件构建模块,用于建立自然语言问题数据对应的以目标自然语言表达的目标查询事件;
数据库模式匹配模块,用于在预设的各个数据库中表和字段各自对应的自然语言术语别名中,查找与所述目标查询事件相匹配的目标自然语言术语别名,并将该目标自然语言术语别名对应的数据库模式确定为与所述自然语言问题数据匹配的目标数据库模式。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一项所述的数据库模式匹配方法,或者,所述处理器执行所述计算机程序时实现权利要求7所述的SQL查询语句生成方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6任一项所述的数据库模式匹配方法,或者,所述计算机程序被处理器执行时实现权利要求7所述的SQL查询语句生成方法。
CN202111134883.1A 2021-09-27 2021-09-27 数据库模式匹配方法及装置、sql查询语句生成方法 Pending CN113868252A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111134883.1A CN113868252A (zh) 2021-09-27 2021-09-27 数据库模式匹配方法及装置、sql查询语句生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111134883.1A CN113868252A (zh) 2021-09-27 2021-09-27 数据库模式匹配方法及装置、sql查询语句生成方法

Publications (1)

Publication Number Publication Date
CN113868252A true CN113868252A (zh) 2021-12-31

Family

ID=78991264

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111134883.1A Pending CN113868252A (zh) 2021-09-27 2021-09-27 数据库模式匹配方法及装置、sql查询语句生成方法

Country Status (1)

Country Link
CN (1) CN113868252A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114661963A (zh) * 2022-05-25 2022-06-24 阿里巴巴达摩院(杭州)科技有限公司 模式链接处理方法、装置以及计算机可读存储介质
CN116561288A (zh) * 2023-07-12 2023-08-08 腾讯科技(深圳)有限公司 事件查询方法、装置、计算机设备、存储介质及程序产品
CN116628023A (zh) * 2023-05-10 2023-08-22 云和恩墨(北京)信息技术有限公司 等待事件类型查询方法、装置、存储介质和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170228372A1 (en) * 2016-02-08 2017-08-10 Taiger Spain Sl System and method for querying questions and answers
CN111177174A (zh) * 2018-11-09 2020-05-19 百度在线网络技术(北京)有限公司 Sql语句的生成方法、装置、设备和计算机可读存储介质
CN112434115A (zh) * 2020-11-23 2021-03-02 京东数字科技控股股份有限公司 一种数据处理方法、装置、电子设备及可读存储介质
CN112989010A (zh) * 2021-04-26 2021-06-18 广州思迈特软件有限公司 数据查询方法、数据查询装置和电子设备
CN113127506A (zh) * 2021-06-16 2021-07-16 北京明略昭辉科技有限公司 目标查询语句的构建方法、装置、存储介质和电子装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170228372A1 (en) * 2016-02-08 2017-08-10 Taiger Spain Sl System and method for querying questions and answers
CN111177174A (zh) * 2018-11-09 2020-05-19 百度在线网络技术(北京)有限公司 Sql语句的生成方法、装置、设备和计算机可读存储介质
CN112434115A (zh) * 2020-11-23 2021-03-02 京东数字科技控股股份有限公司 一种数据处理方法、装置、电子设备及可读存储介质
CN112989010A (zh) * 2021-04-26 2021-06-18 广州思迈特软件有限公司 数据查询方法、数据查询装置和电子设备
CN113127506A (zh) * 2021-06-16 2021-07-16 北京明略昭辉科技有限公司 目标查询语句的构建方法、装置、存储介质和电子装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114661963A (zh) * 2022-05-25 2022-06-24 阿里巴巴达摩院(杭州)科技有限公司 模式链接处理方法、装置以及计算机可读存储介质
CN114661963B (zh) * 2022-05-25 2022-09-27 阿里巴巴达摩院(杭州)科技有限公司 模式链接处理方法、装置以及计算机可读存储介质
CN116628023A (zh) * 2023-05-10 2023-08-22 云和恩墨(北京)信息技术有限公司 等待事件类型查询方法、装置、存储介质和电子设备
CN116628023B (zh) * 2023-05-10 2024-04-09 云和恩墨(北京)信息技术有限公司 等待事件类型查询方法、装置、存储介质和电子设备
CN116561288A (zh) * 2023-07-12 2023-08-08 腾讯科技(深圳)有限公司 事件查询方法、装置、计算机设备、存储介质及程序产品
CN116561288B (zh) * 2023-07-12 2024-01-05 腾讯科技(深圳)有限公司 事件查询方法、装置、计算机设备、存储介质及程序产品

Similar Documents

Publication Publication Date Title
CN109299110B (zh) 数据查询方法、装置、存储介质和电子设备
CN111460506B (zh) 数据访问控制方法及装置
CN113868252A (zh) 数据库模式匹配方法及装置、sql查询语句生成方法
KR102185864B1 (ko) 프레젠테이션을 위한 네이티브 콘텐츠의 서버측 렌더링 방법 및 시스템
US10878044B2 (en) System and method for providing content recommendation service
CN102254029B (zh) 一种基于视图的数据访问系统及其方法
EP3173951B1 (en) Integrated framework for secured data provisioning and management
CN109766354A (zh) 业务数据查询的优化方法、装置及设备
US20150012533A1 (en) Method and client device for accessing webpage
CN112597199B (zh) 异构多数据源适配方法及装置
CN112784112B (zh) 报文校验方法及装置
CN112256772A (zh) 数据服务方法、装置以及可读存储介质
CN104008087A (zh) 一种针对具有标准格式的文案的自动排版方法和系统
WO2015000342A1 (en) Method and client device for accessing webpage
CN112925898A (zh) 基于人工智能的问答方法、装置、服务器及存储介质
CN109726295A (zh) 品牌知识图谱显示方法、装置、图服务器及存储介质
WO2018001040A1 (zh) 业务数据提供方法、装置和计算机存储介质
CN110222282A (zh) 数据处理方法、装置、服务器及存储介质
CN113568888A (zh) 索引推荐方法及装置
CN113962202B (zh) 一种录入页面的填充方法及计算机程序产品
CN110597765A (zh) 一种大零售呼叫中心异构数据源数据处理方法及装置
CN105808628A (zh) 网页转码方法、装置及系统
CN114968917A (zh) 一种文件数据快速导入方法及装置
US20210264112A1 (en) Bot dialog manager
CN113190236A (zh) Hql脚本校验方法及装置

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