CN110413608A - 数据查询方法、装置、可读存储介质和程序产品 - Google Patents

数据查询方法、装置、可读存储介质和程序产品 Download PDF

Info

Publication number
CN110413608A
CN110413608A CN201910520718.6A CN201910520718A CN110413608A CN 110413608 A CN110413608 A CN 110413608A CN 201910520718 A CN201910520718 A CN 201910520718A CN 110413608 A CN110413608 A CN 110413608A
Authority
CN
China
Prior art keywords
data
attribute
attribute item
triggered
item
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
CN201910520718.6A
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.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
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 Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201910520718.6A priority Critical patent/CN110413608A/zh
Publication of CN110413608A publication Critical patent/CN110413608A/zh
Pending legal-status Critical Current

Links

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/245Query processing
    • G06F16/2455Query execution

Landscapes

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

Abstract

本申请提供了一种数据查询方法、装置、可读存储介质和程序产品,本申请涉及大数据技术领域。本申请的方法根据数据表间的实体‑联系图和数据表之间的业务关系确定表间关系;在监测到数据后,确定数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与数据匹配,若匹配,则根据交集包含的数据表、数据生成SQL查询语句,进而得到数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、数据生成SQL查询语句,进而得到数据;展示得到的数据,实现了不熟悉业务情况下的数据查询。

Description

数据查询方法、装置、可读存储介质和程序产品
技术领域
本发明涉及大数据技术领域,尤其涉及数据查询方法、装置、可读存储介质和程序产品。
背景技术
随着大数据时代的到来,数据呈现爆炸式增长。虽然数据中心存有不少数据,但适合解决用户急需问题的数据缺之又缺,不用的时候数据却多之又多,大数据应用是对业务积累数据的再利用,不像统计调查可以根据需要进行调查设计,因此缺乏适用的数据经常是常态。
面对海量数据,快速、准确的查找到对应的数据变得越来越困难。
现在普遍查询数据需要靠个人对业务的熟悉度和对表名和表结构的熟悉度,不容易记住,学习成本也高。
发明内容
为解决上述问题,本申请实施例提供了一种数据查询方法,所述方法包括:
获取数据表之间的实体-联系图,所述实体-联系图为根据业务规则建立数据表时建立的;
根据所述实体-联系图和数据表之间的业务关系确定表间关系;
在监测到第一数据后,确定第一数据对应的多个数据表子集;
确定所有数据表子集的交集;
若所述交集包含的数据表为1个,则确定所述交集包含的数据表是否与所述第一数据匹配,若匹配,则根据所述交集包含的数据表、所述第一数据生成第一结构化查询语言SQL查询语句,执行所述第一SQL查询语句得到第二数据;
若所述交集包含的数据表为多个,则根据所述表间关系确定所述交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据所述每个数据表均关联的关联数据表、所述第一数据生成第二SQL查询语句,执行所述第二SQL查询语句得到第二数据;
展示所述第二数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示数据表列表;
当监测到任一数据表被触发后,确定所述任一数据表包括的所有字段;
通过所述人机接口显示所述任一数据表包括的所有字段;
当监测到任意一个或多个相关字段被触发后,将所述任一数据表和触发的所有相关字段均作为监测到的第一数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板,所述查询模板中包括多个属性,每个属性对应一个或多个属性项;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板和属性项输入接口,所述查询模板中包括多个属性,每个属性对应一个或多个属性项,每一个属性项输入接口与一个属性对应;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性均对应属性项输入接口;
所述通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件的属性中的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性中一部分对应属性项输入接口,另一部分未对应属性项输入接口;
所述通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件,且未对应属性项输入接口的属性中的任一属性项被触发,同时,监测到满足预设条件,且对应属性项输入接口的一部分属性中的任一属性项被触发,对应属性项输入接口的另一部分属性中的的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,所述通过人机接口显示预先设置的查询模板,包括:
获取历史行为数据;
根据所述历史行为数据确定兴趣标签;
从属性对应的属性项中选择与所述兴趣标签匹配的属性项;
通过人机接口显示对应选择出的属性项的查询模板。
本申请实施例还提供了一种数据查询装置,所述装置包括:
获取模块,用于获取数据表之间的实体-联系图,所述实体-联系图为根据业务规则建立数据表时建立的;
第一确定模块,用于根据所述实体-联系图和数据表之间的业务关系确定表间关系;
第二确定模块,用于在监测到第一数据后,确定第一数据对应的多个数据表子集;
第三确定模块,用于确定所有数据表子集的交集;
第一处理模块,用于当所述交集包含的数据表为1个时,确定所述交集包含的数据表是否与所述第一数据匹配,若匹配,则根据所述交集包含的数据表、所述第一数据生成第一结构化查询语言SQL查询语句,执行所述第一SQL查询语句得到第二数据;
第二处理模块,用于当所述交集包含的数据表为多个时,根据所述表间关系确定所述交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据所述每个数据表均关联的关联数据表、所述第一数据生成第二SQL查询语句,执行所述第二SQL查询语句得到第二数据;
展示模块,用于展示所述第二数据。
本申请实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机指令,所述计算机指令使所述计算机执行本申请上述贷款数据处理方法。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行本申请上述贷款数据处理方法。
有益效果如下:
根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。
附图说明
下面将参照附图描述本申请的具体实施例,其中:
图1示出了本申请一实施例提供的一种数据查询方法的流程示意图;
图2示出了本申请一实施例提供的一种显示任一数据表包括的所有字段的页面示意图;
图3示出了本申请一实施例提供的一种查询模板的显示示意图;
图4示出了本申请一实施例提供的一种数据表子集的示意图;
图5示出了本申请一实施例提供的一种链路示意图;
图6示出了本申请一实施例提供的一种数据查询装置的结构示意图;
图7示出了本申请一实施例提供的一种计算机设备的示意图;
图8示出了本申请一实施例提供的一种E-R图的示意图。
具体实施方式
现在普遍查询数据需要靠个人对业务的熟悉度和对表名和表结构的熟悉度,不容易记住,学习成本也高。
基于此,本申请提供一种数据查询方法,根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。
如图1所示,本实施例提供的数据查询方法的实现流程如下:
101,获取数据表之间的实体-联系图。
其中,每次建表时根据业务规则建立每张表之间的关系,即E-R图(EntityRelationship Diagram,实体-联系图),本步骤即获取该E-R图为,也就是说E-R图是根据业务规则建立数据表时建立的。
E-R图提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型,是表示概念关系模型的一种方式。E-R图在具体实现时可以被存储为一张图片,也可以被存储为其他格式的文档,如Visio的.vsd格式等。
为了方便说明,本实施例仅以E-R图以图片形式存储为例,对于其他文档的实现方式,不再描述。
若E-R图的图片如图8所示(图8仅为示例,实际应用时,E-R图的内容根据实际情况而定),通过E-R图可以获知实体(如图8中方框所示的内容)、属性(如图8中椭圆形所示的内容)、实体与属性之间的关系(连接方框和椭圆形的菱形,图8中未涉及)、实体与实体之间的关系(连接两个方框的菱形,如图8中菱形所示的内容)、表与表之间关系(连接两个椭圆形之间的菱形,图8中未涉及)等。
其中,每个实体对应一个数据表。如图8中的出版社实体对应出版社表,图8中的借书人实体对应借书人表,图8中的图书实体对应图书表。
本步骤可以获取E-R图(如获取该E-R图对应的图片),根据E-R图即可得出表与表之间的关系。
以步骤101中获取到一幅图片,该图片为图8所示的E-R图为例。通过对该图中方框、椭圆形和菱形的识别,可以知道图书和出版社之间存在多(如m)对1的关系,及多个图书可以在同一家出版社出版。出版社具有出版社名的属性。
102,根据实体-联系图和数据表之间的业务关系确定表间关系。
虽然根据E-R图即可得出表与表之间的关系,此种关系仅为表间、字段间的直接关系。但是本提案并不是简单的根据E-R图确定表间关系。而是在确定表间关系时,除考虑该直接关系,还考虑表间、字段之间的间接关系。间接关系是数据表之间的业务关系,具体实现时可以为多级字段之间的关系,还可以为字段进行逻辑处理之后存在的关系。
例如,单纯从数据表、字段来看,用户A对应的属性表与用户B对用的属性表之间没有关系,但是若用户A曾经从用户B的家人开的网店中购买过产品,此时,用户A与用户B之间存在业务关系。
再例如图8所示的E-R图,通过对图8所示的方框和菱形进行识别,只能识别出图书实体与出版社实体之间存在实体与实体之间的关系(为了方便描述,此关系命名为关系1),借书人实体和图书实体存在实体与实体之间的关系(为了方便描述,此关系命名为关系2)。由于关系1和关系2都涉及图书实体,因此,也可以得到借书人实体和出版社实体之间会基于图书实体存在一个关系(为了方便描述,此关系命名为关系3)。但图8中并未出现福利院实体,因此通过对图8的识别,并不会得到福利院实体与出版社实体之间存在任何关系。
此时,若福利院对应的数据表和出版社对应的对应表之间有如下的业务关系:福利院实体得到过捐赠,捐赠的图书是由图8中的出版社实体出版的。此时,会得到福利院实体与出版社实体之间存在一个关系(为了方便描述,此关系命名为关系4)。
最终会得到4个关系,分别为关系1(E-R图得到的)、关系2(E-R图得到的)、关系3(E-R图得到的)和关系4(业务关系得到的,并非通过E-R图得到)。
由于考虑了业务关系,拓展了数据之间的关系网(如关系4即为由于考虑了业务关系所拓展的),基于该关系网找到的对应数据更加全面,更加智能,更加准确。
103,监测到第一数据后,确定第一数据对应的多个数据表子集。
其中,
1)确定监测到第一数据的方法可以有多种实现方式:
第一种实现方式:
1.1通过人机接口显示数据表列表。
其中,人机接口包括但不限于屏幕、页面。
例如,每次需要查看业务数据时,在页面上显示数据表列表(如列表中包括:客户信息表、订单表、商品表、仓库表等)。
1.2当监测到任一数据表被触发后,确定任一数据表包括的所有字段。
其中,触发包括但不限于点击,勾选。
例如,若用户选择客户信息表,则从数据库中获取客户信息表包括的所有字段。
1.3通过人机接口显示任一数据表包括的所有字段。
此处的人机接口与步骤1.1中的人机接口可以为相同的人机接口,也可以为不同的人机接口。
例如,在显示数据表列表的同一页面中显示显示任一数据表包括的所有字段。
再例如,在图2所示的页面中,向用户展示客户信息表中包括的所有字段。
1.4当监测到任意一个或多个相关字段被触发后,将任一数据表和触发的所有相关字段均作为监测到的第一数据。
其中,触发包括但不限于点击,勾选。
步骤1.4中的触发可以与步骤1.2中的触发方式,也可以不同。
第一数据的形式可以为单纯的数据形式,例如:任一数据表,触发的所有相关字段。也可以为语义形式,例如:查询任一数据表中触发的所有相关字段的数据值。
本实施例不对第一数据的表现形式进行限定。
例如,当用户勾选了客户类别后(此处可以设置只可勾选一个字段,也可以设置可以勾选多个字段,在设置可以勾选多个字段时,用户可以只勾选一个,也可以勾选多个,但在设置只可勾选一个字段时,用户只能勾选一个),将客户信息表,客户类别作为监测到的第一数据,或者,将在客户信息表中查询客户类别作为监测到的第一数据。
通过显示数据表列表以及被触发的数据表包括的所有字段,有效的降低了对用户记忆准确性的要求,用户可以在候选选项中选择即可。
此种方式即保证了第一数据的准确性,又有效的提升了查询第一数据对应的第二数据的效率,还降低了技术门槛,有助于提升用户体验。
除了上述是实现方法之外,具体实施例是可以预先设置查询模板,例如:计数,最大,最小,分组,是否存在等。
其中,查询模板,即所需之人在页面所选择的条件,也可以直接在页面输入,叠加起来作为获取第一数据的模板,因此模板比较灵活多变。
在预先设置查询模板的前提下,确定监测到第一数据的方法还可以为:
2.1通过人机接口显示预先设置的查询模板。
其中,查询模板中包括多个属性,每个属性对应一个或多个属性项。
其中,步骤2.1的实现方式可以为:直接显示预先设置的查询模板,如图3所示,其中,图3所示的模板中包括2个属性,即“属性”和“操作”,图3(a)中展示了“属性”属性对应3个属性项,即“客户”、“订单”、“XXX”,图3(b)中展示了“操作”属性对应3个属性项,即“查询”、“更新”、“增加”、“删除”。
除此之外,步骤2.1的实现还方式可以为:对预先设置的查询模板进行处理,显示处理后的查询模板。
这样可以仅展示与用户存在关联关系的属性项,使得展示的内容更加贴合用户。
例如,先确定每个属性对应的所有属性项,再根据用户查询意图,从每个属性对应的所有属性项中选择存在关联关系的属性项作为该属性最终展示的属性项。
在筛选时,考虑的因素为用户意图。用户意图可以根据用户查询之前的操作行为确定。
基于此,本实现方案为:1)获取历史行为数据。2)根据历史行为数据确定兴趣标签。3)从属性对应的属性项中选择与兴趣标签匹配的属性项。4)通过人机接口显示对应选择出的属性项的查询模板。
例如,获取历史行为数据为购买手机的历史订单数据,根据购买手机的历史订单数据确定兴趣标签为手机,那么认为此次查询很可能与手机相关,则从属性对应的属性项中选择与手机匹配的属性项(如“座椅”属性项则不被选择,“手机壳”属性项被选择),通过页面显示对应选择出的属性项的查询模板(查询模板中的属性不变,对应的属性项变为选择的属性项,未选择的属性项不再显示)。
2.2当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性。
模板中的所有属性可能全为用户必须确认属性项的属性,也可以为用户非必须确认属性项的属性。例如用户标识属性为用户必须确认属性项的属性,用户爱好为用户非必须确认属性项的属性。因此预设条件即为预先设定的哪些属性是用户必须确认属性项的。
另外,此处的触发包括但不限于被用户点击,勾选等。被触发即被用户选择一个对应的属性项,也即用户确认了属性项。
由于满足预设条件的属性为用户必须确认的属性,因此,当用户操作完毕后,确认所有满足预设条件的属性均被用户选择一个对应的属性项,才认为监测到满足预设条件的属性中的任一属性项被触发。
在实践中,可以将模板中的所有属性都确定为用户必须确认属性项,此时,若监测到满足预设条件的属性中的任一属性项被触发,则说明查询模板中的所有属性都已经对应一个属性项。
在实践中,还可以将模板中的部分属性都确定为用户必须确认属性项,此时,若监测到满足预设条件的属性中的任一属性项被触发,则说明查询模板中的部分属性对应一个属性项,剩余的未满足预设条件的属性可能已经对应了属性项,也可能未对应属性项。若未对应属性项,则在确定第一数据时,该属性的属性项无法确定,会出现错误。为了防止此错误,本实施例会在监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性。若存在未被触发属性项的属性,则执行步骤2.3,若不存在未被触发属性项的属性,则执行步骤2.4。
2.3根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项。
例如,若未被触发属性项的属性为用户爱好,在先设置的属性与默认属性项之间的对应关系中用户爱好对应的默认属性项为无,此时,确定用户爱好的默认属性项为无。
2.4将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
对于用户触发的属性,此处是属性及对应的被触发的属性项,若用户未触发的属性,此处是属性及默认属性。
第二种实现方式,并不需要用户对于模板中的每个属性均做属性项的触发,仅需要对满足预设条件的属性做属性项的触发即可。当然对不满足预设条件的属性,用户也做属性项的触发,本实施例也会基于该触发确定第一数据。
上述模板中的属性项是固定不变的,在实际应用时,很多用户实际的属性项不在模板的属性项中,此时,会通过第三种实现方式确定监测到第一数据。
3.1通过人机接口显示预先设置的查询模板和属性项输入接口。
其中,查询模板中包括多个属性,每个属性对应一个或多个属性项,每一个属性项输入接口与一个属性对应。
对于通过人机接口显示预先设置的查询模板的实现方式,如步骤2.1,本步骤不再赘述。
对于通过人机接口显示属性项输入接口的方式,可以在属性后显示一个文本输入框实现。
还可以通过Ext控件同事实现查询模板和属性项输入接口的显示,Ext控件就可以显示下拉列表,又可以获取文本输入。
另外,属性项输入接口的实现可以为,每一个属性对应一个属性项输入接口。还可以为,部分属性对应属性项输入接口。也即每一个属性项输入接口与一个属性对应,但并非必须每一个属性与一个属性项输入接口对应。
此时可以出现如下几种情况:
第一种情况:无论是否每个属性都对应一个属性项输入接口,用户仅进行了选择,并未通过属性项输入接口输入属性项。
第一种情况的实现方案类似第二种是实现方式。
如:
3.2当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性。
步骤3.2的实现方式与步骤2.2的实现方式相同,详见步骤2.2,此处不再赘述。
3.3若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项。
步骤3.3的实现方式与步骤2.3的实现方式相同,详见步骤2.3,此处不再赘述。
3.4将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
步骤3.4的实现方式与步骤2.4的实现方式相同,详见步骤2.4,此处不再赘述。
第二种情况:满足预设条件的属性均对应属性项输入接口,未满足预设条件的属性可以都对应属性项输入接口,也可以都不对应属性项输入接口,还可以部分对应,部分不对应。
此时,
3.5当监测到满足预设条件的属性中的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性。
在监测到满足预设条件的属性中的条件输入接口被输入属性项后还会对输入的属性项做检测,如非法字符检测,若输入的与属性项要求不符,可以向用户预警,也可疑作为条件输入接口未被输入属性项处理。
3.6若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口。
若一个属性未被触发属性项,有未对应条件输入接口,则可以确定该属性未对应属性项。
3.7若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项。
步骤3.7的实现方式与步骤2.3的实现方式相同,详见步骤2.3,此处不再赘述。
3.8若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项。
3.9将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
第三种情况:若满足预设条件的属性中一部分对应属性项输入接口,另一部分未对应属性项输入接口,未满足预设条件的属性可以都对应属性项输入接口,也可以都不对应属性项输入接口,还可以部分对应,部分不对应。
此时,
3.10当监测到满足预设条件,且未对应属性项输入接口的属性中的任一属性项被触发,同时,监测到满足预设条件,且对应属性项输入接口的一部分属性中的任一属性项被触发,对应属性项输入接口的另一部分属性中的的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性。
3.11若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口。
3.12若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项。
3.13若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项。
3.14将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
通过上述方式,可以实现属性项的叠加选择,也可以手动输入,手动输入的属性项,系统后台处理时会进行非法字符判断,同时属性项还可以通过选择操作确定。
通过上述方式,可以实现模板的实时动态变化,使得每次第一数据的确定符合用户的预期,也使得每次最终第二数据的确定均符合用户当前的实际情况,保证了第二数据的精确性。
上述为监测到第一数据的过程。
2)在监测到第一数据后,会确定第一数据对应的多个数据表子集。
例如,客户在页面选择客户,商品,查询作为模板得到第一数据为查询客户张三购买过哪些商品。该第一数据会对应2个数据表子集(数据表子集个数由第一数据中涉及的属性个数决定)。如图4所示,第一个数据表子集为客户集,包括与客户相关的表,如客户信息表、订单表、联系人表、商品表、仓库表。第二个数据表子集为商品集,包括与商品相关的表,如商品表、订单表、仓库表。
104,确定所有数据表子集的交集。
例如,确定客户集与商品集的交集,该交集中包括:商品表、订单表、仓库表。
105,若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL(Structured Query Language,结构化查询语言)查询语句,执行第一SQL查询语句得到第二数据。
生成SQL查询语句的方式可根据模板生成。
例如,根据SQL模板从数据表、第一数据找到模板中需要的参数,如对哪几个字段分组,哪几个取最小和最大,生成查询字段,将其填入SQL模板中合并起来生成对应SQL查询语句,在根据数据表、第一数据中的其他属性补充条件即可。
本提案根据根据交集包含的数据表、第一数据生成动态生成SQL查询语句,确保了SQL查询语句与当前用户需求的贴合程度。
另外,自动生成SQL查询语句,保证了语句的质量,提升了语句生成速度,有效的提升了用户查询效率。
例如,目前方法中,用户需要自己输入SQL查询语句,这就需要用户懂得SQL知识,而SQL知识为专业性较强的知识,对于一般用户,很难掌握该知识,限制了现有方法的使用门槛。
另外,用户在自己输入SQL查询语句时,很可能因为马虎等原因造成输入内容出错。对于此种问题,用户很难通过自身检查发现,使得用户需要查找原因,重新输入,加大了查询时间。
此外,用户需要熟记各表的内容和表间之间的关系,若用户记忆出现偏差,则无法查找到想要的数据。
对于上述三方面的问题,本提案的方案可以有效的解决。因为本提案的SQL查询语句是自动生成的,有效的避免了笔误的问题。用户仅需要配置模板即可,不需要掌握SQL知识。然后在设置模板时,会根据用户的上一次操作,自动显示与之关联的数据,不再需要用户对数据内容以及数据之间关联关系的准确记忆,降低了使用门槛,提升了使用质量。
106,若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据。
若交集表唯一则匹配交集表的数据是否一致,如果一致则认为是同一张表;若是交集表不唯一则在子集中回溯,直到找到根节点,也就是找到唯一的链路,确定输出唯一的SQL语句。
例如,先查询张三客户在客户表中的标识,再去查找订单表中张三对应的订单的标识如订单1,查找到订单标识后,再去商品表中查找订单标识对应的商品标识,即可查询出“客户购买过哪些商品”。
在这个查找过程中,形成一条链路,如上图所示的链路,才可以正确输出对应的SQL。
再例如,如果步骤102中确定的表间关系为关系1(图书实体与出版社实体之间存在实体与实体之间的关系)、关系2(借书人实体和图书实体存在实体与实体之间的关系)、关系3(借书人实体和出版社实体之间的关系)和关系4(福利院实体与出版社实体之间的关系)。如果步骤103中客户在页面选择客户,图像,查询作为模板得到第一数据为查询客户张三购买过哪些图书。该第一数据会对应2个数据表子集,第一个数据表子集为客户集,包括与客户相关的表,如客户信息表、订单表、联系人表、出版社表、仓库表。第二个数据表子集为图书集,包括与图书相关的表,如出版社表、订单表、库存表。步骤104中确定客户集与图书集的交集包括出版社表、订单表、库存表。
下面以交集中的一个表(出版社表)为例,进行步骤106的实现方式,对于其他两个表的实现方式,可参见出版社表的实现方式,此处不再赘述。
根据步骤102确定的关系1(图书实体与出版社实体之间存在实体与实体之间的关系),可以确定出版社表(为表8中的出版社实体)的关联数据表为图书表(表8中的图书实体)。根据步骤102确定的关系3(借书人实体和出版社实体之间的关系),可以确定出版社表(为表8中的出版社实体)的关联数据表为借书人表(表8中的借书人体)。根据步骤102确定的关系4(福利院实体与出版社实体之间的关系)可以确定出版社表(为表8中的出版社实体)的关联数据表为福利院表(表8中的福利院实体)。即出版社表的关联数据表为出版社表、借书人表、福利院表。
若同样方式得到订单表的关联数据表为出版社表、借书人表。库存表的关联数据表为出版社表、福利院表。
得到每个数据表均关联的关联数据表为出版社表。
此时,基于每个数据表均关联的关联数据表(出版社表)、第一数据(查询客户张三购买过哪些图书)生成在出版社表中查询客户张三购买过哪些图书的SQL语句,执行第二SQL查询语句得到第二数据。
需要说明的是,上述仅为示例,实际执行时以实际情况为准。
107,展示第二数据。
本实施例的方法在用户确定查询A表和C表后,若A表跟B表有关联关系,B表跟C表有关联关系,则会自动关联B表,生成查询SQL语句和关联条件,展示B表中的数据。可以在用户提供一个相关信息后,智能的查找到与该信息相关的其他信息,并展示其他信息。这样,用户不必准确的记得数据的精确存储位置,只需要记得相关信息之一即可智能的查找到用户想要的数据,提升了数据查找的智能性和准确性,降低了对用户的要求,提升用户体验。
需要说明的是,本实施例及后续实施例中的“第一”、“第二”仅为标识,用于区分不同的SQL语句和数据,并未有其他实质含义。
有益效果:
根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。
基于与图1所示的贷款数据处理方法同一发明构思,本实施例还提供一种一种数据查询装置,参见图6,该装置包括:
获取模块601,用于获取数据表之间的实体-联系图,实体-联系图为根据业务规则建立数据表时建立的;
第一确定模块602,用于根据实体-联系图和数据表之间的业务关系确定表间关系;
第二确定模块603,用于在监测到第一数据后,确定第一数据对应的多个数据表子集;
第三确定模块604,用于确定所有数据表子集的交集;
第一处理模块605,用于当交集包含的数据表为1个时,确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一结构化查询语言SQL查询语句,执行第一SQL查询语句得到第二数据;
第二处理模块606,用于当交集包含的数据表为多个时,根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;
展示模块607,用于展示第二数据。
可选地,所述装置还包括:
检测模块,用于通过人机接口显示数据表列表;当监测到任一数据表被触发后,确定任一数据表包括的所有字段;通过人机接口显示任一数据表包括的所有字段;当监测到任意一个或多个相关字段被触发后,将任一数据表和触发的所有相关字段均作为监测到的第一数据;
或者,
检测模块,用于通过人机接口显示预先设置的查询模板,查询模板中包括多个属性,每个属性对应一个或多个属性项;当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据;
或者,
检测模块,用于通过人机接口显示预先设置的查询模板和属性项输入接口,查询模板中包括多个属性,每个属性对应一个或多个属性项,每一个属性项输入接口与一个属性对应;当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性均对应属性项输入接口;
检测模块,还用于当监测到满足预设条件的属性中的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性中一部分对应属性项输入接口,另一部分未对应属性项输入接口;
检测模块,还用于当监测到满足预设条件,且未对应属性项输入接口的属性中的任一属性项被触发,同时,监测到满足预设条件,且对应属性项输入接口的一部分属性中的任一属性项被触发,对应属性项输入接口的另一部分属性中的的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,检测模块,用于获取历史行为数据;根据历史行为数据确定兴趣标签;从属性对应的属性项中选择与兴趣标签匹配的属性项;通过人机接口显示对应选择出的属性项的查询模板。
有益效果:
根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。
本实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机指令,所述计算机指令使所述计算机执行上述图1所示的方法实施例所提供的方法。
如:
获取数据表之间的实体-联系图,实体-联系图为根据业务规则建立数据表时建立的;
根据实体-联系图和数据表之间的业务关系确定表间关系;
在监测到第一数据后,确定第一数据对应的多个数据表子集;
确定所有数据表子集的交集;
若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一结构化查询语言SQL查询语句,执行第一SQL查询语句得到第二数据;
若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;
展示第二数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示数据表列表;
当监测到任一数据表被触发后,确定任一数据表包括的所有字段;
通过人机接口显示任一数据表包括的所有字段;
当监测到任意一个或多个相关字段被触发后,将任一数据表和触发的所有相关字段均作为监测到的第一数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板,查询模板中包括多个属性,每个属性对应一个或多个属性项;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板和属性项输入接口,查询模板中包括多个属性,每个属性对应一个或多个属性项,每一个属性项输入接口与一个属性对应;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性均对应属性项输入接口;
通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件的属性中的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性中一部分对应属性项输入接口,另一部分未对应属性项输入接口;
通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件,且未对应属性项输入接口的属性中的任一属性项被触发,同时,监测到满足预设条件,且对应属性项输入接口的一部分属性中的任一属性项被触发,对应属性项输入接口的另一部分属性中的的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,通过人机接口显示预先设置的查询模板,包括:
获取历史行为数据;
根据历史行为数据确定兴趣标签;
从属性对应的属性项中选择与兴趣标签匹配的属性项;
通过人机接口显示对应选择出的属性项的查询模板。
有益效果:
根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。
本实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述图1所示的方法实施例所提供的方法。
如:
获取数据表之间的实体-联系图,实体-联系图为根据业务规则建立数据表时建立的;
根据实体-联系图和数据表之间的业务关系确定表间关系;
在监测到第一数据后,确定第一数据对应的多个数据表子集;
确定所有数据表子集的交集;
若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一结构化查询语言SQL查询语句,执行第一SQL查询语句得到第二数据;
若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;
展示第二数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示数据表列表;
当监测到任一数据表被触发后,确定任一数据表包括的所有字段;
通过人机接口显示任一数据表包括的所有字段;
当监测到任意一个或多个相关字段被触发后,将任一数据表和触发的所有相关字段均作为监测到的第一数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板,查询模板中包括多个属性,每个属性对应一个或多个属性项;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板和属性项输入接口,查询模板中包括多个属性,每个属性对应一个或多个属性项,每一个属性项输入接口与一个属性对应;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性均对应属性项输入接口;
通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件的属性中的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,满足预设条件的属性中一部分对应属性项输入接口,另一部分未对应属性项输入接口;
通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件,且未对应属性项输入接口的属性中的任一属性项被触发,同时,监测到满足预设条件,且对应属性项输入接口的一部分属性中的任一属性项被触发,对应属性项输入接口的另一部分属性中的的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
可选地,通过人机接口显示预先设置的查询模板,包括:
获取历史行为数据;
根据历史行为数据确定兴趣标签;
从属性对应的属性项中选择与兴趣标签匹配的属性项;
通过人机接口显示对应选择出的属性项的查询模板。
有益效果:
根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。
图7是本发明实施例提供的一种计算机设备的示意图。如图7所示,该实施例的计算机设备50包括:处理器51、存储器52以及存储在存储器52中并可在处理器51上运行的计算机程序53,该计算机程序53被处理器51执行时实现图1所示的实施例中的数据查询方法,为避免重复,此处不一一赘述。或者,该计算机程序被处理器51执行时实现图6所示的实施例中数据查询装置中各模型/单元的功能,为避免重复,此处不一一赘述。
计算机设备50可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可包括,但不仅限于,处理器51、存储器52。本领域技术人员可以理解,图7仅仅是计算机设备50的示例,并不构成对计算机设备50的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器51可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器52可以是计算机设备50的内部存储单元,例如计算机设备50的硬盘或内存。存储器52也可以是计算机设备50的外部存储设备,例如计算机设备50上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器52还可以既包括计算机设备50的内部存储单元也包括外部存储设备。存储器52用于存储计算机程序以及计算机设备所需的其他程序和数据。存储器52还可以用于暂时地存储已经输出或者将要输出的数据。
有益效果:
根据数据表之间的实体-联系图和数据表之间的业务关系确定表间关系;在监测到第一数据后,确定第一数据对应的多个数据表子集;确定所有数据表子集的交集;若交集包含的数据表为1个,则确定交集包含的数据表是否与第一数据匹配,若匹配,则根据交集包含的数据表、第一数据生成第一SQL查询语句,执行第一SQL查询语句得到第二数据;若交集包含的数据表为多个,则根据表间关系确定交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据每个数据表均关联的关联数据表、第一数据生成第二SQL查询语句,执行第二SQL查询语句得到第二数据;展示第二数据,实现了不熟悉业务情况下的数据查询。

Claims (10)

1.一种数据查询方法,其特征在于,所述方法包括:
获取数据表之间的实体-联系图,所述实体-联系图为根据业务规则建立数据表时建立的;
根据所述实体-联系图和数据表之间的业务关系确定表间关系;
在监测到第一数据后,确定第一数据对应的多个数据表子集;
确定所有数据表子集的交集;
若所述交集包含的数据表为1个,则确定所述交集包含的数据表是否与所述第一数据匹配,若匹配,则根据所述交集包含的数据表、所述第一数据生成第一结构化查询语言SQL查询语句,执行所述第一SQL查询语句得到第二数据;
若所述交集包含的数据表为多个,则根据所述表间关系确定所述交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据所述每个数据表均关联的关联数据表、所述第一数据生成第二SQL查询语句,执行所述第二SQL查询语句得到第二数据;
展示所述第二数据。
2.根据权利要求1所述的方法,其特征在于,监测第一数据的方法,包括:
通过人机接口显示数据表列表;
当监测到任一数据表被触发后,确定所述任一数据表包括的所有字段;
通过所述人机接口显示所述任一数据表包括的所有字段;
当监测到任意一个或多个相关字段被触发后,将所述任一数据表和触发的所有相关字段均作为监测到的第一数据。
3.根据权利要求1所述的方法,其特征在于,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板,所述查询模板中包括多个属性,每个属性对应一个或多个属性项;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
4.根据权利要求1所述的方法,其特征在于,监测第一数据的方法,包括:
通过人机接口显示预先设置的查询模板和属性项输入接口,所述查询模板中包括多个属性,每个属性对应一个或多个属性项,每一个属性项输入接口与一个属性对应;
当监测到满足预设条件的属性中的任一属性项被触发后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
5.根据权利要求4所述的方法,其特征在于,满足预设条件的属性均对应属性项输入接口;
所述通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件的属性中的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
6.根据权利要求4或5任一项所述的方法,其特征在于,满足预设条件的属性中一部分对应属性项输入接口,另一部分未对应属性项输入接口;
所述通过人机接口显示预先设置的查询模板和属性项输入接口之后,还包括:
当监测到满足预设条件,且未对应属性项输入接口的属性中的任一属性项被触发,同时,监测到满足预设条件,且对应属性项输入接口的一部分属性中的任一属性项被触发,对应属性项输入接口的另一部分属性中的的条件输入接口被输入属性项后,在未满足预设条件的属性中,确定是否存在未被触发属性项的属性;
若存在未被触发属性项的属性,确定未被触发属性项的属性是否对应条件输入接口;
若未被触发属性项的属性未对应条件输入接口,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
若未被触发属性项的属性对应条件输入接口,则确定未被触发属性项的属性对应的条件输入接口是否被输入属性项,若未被输入属性项,则根据预先设置的属性与默认属性项之间的对应关系,确定未被触发属性项的属性的默认属性项;
将各属性以及对应的被触发的属性项或默认属性项均作为监测到的第一数据。
7.根据权利要求4或5任一项所述的方法,其特征在于,所述通过人机接口显示预先设置的查询模板,包括:
获取历史行为数据;
根据所述历史行为数据确定兴趣标签;
从属性对应的属性项中选择与所述兴趣标签匹配的属性项;
通过人机接口显示对应选择出的属性项的查询模板。
8.一种数据查询装置,其特征在于,所述装置包括:
获取模块,用于获取数据表之间的实体-联系图,所述实体-联系图为根据业务规则建立数据表时建立的;
第一确定模块,用于根据所述实体-联系图和数据表之间的业务关系确定表间关系;
第二确定模块,用于在监测到第一数据后,确定第一数据对应的多个数据表子集;
第三确定模块,用于确定所有数据表子集的交集;
第一处理模块,用于当所述交集包含的数据表为1个时,确定所述交集包含的数据表是否与所述第一数据匹配,若匹配,则根据所述交集包含的数据表、所述第一数据生成第一结构化查询语言SQL查询语句,执行所述第一SQL查询语句得到第二数据;
第二处理模块,用于当所述交集包含的数据表为多个时,根据所述表间关系确定所述交集包含的每个数据表的关联数据表,确定每个数据表均关联的关联数据表,根据所述每个数据表均关联的关联数据表、所述第一数据生成第二SQL查询语句,执行所述第二SQL查询语句得到第二数据;
展示模块,用于展示所述第二数据。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1至7任一项所述的方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行权利要求1至7任一项所述的方法。
CN201910520718.6A 2019-06-17 2019-06-17 数据查询方法、装置、可读存储介质和程序产品 Pending CN110413608A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910520718.6A CN110413608A (zh) 2019-06-17 2019-06-17 数据查询方法、装置、可读存储介质和程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910520718.6A CN110413608A (zh) 2019-06-17 2019-06-17 数据查询方法、装置、可读存储介质和程序产品

Publications (1)

Publication Number Publication Date
CN110413608A true CN110413608A (zh) 2019-11-05

Family

ID=68359202

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910520718.6A Pending CN110413608A (zh) 2019-06-17 2019-06-17 数据查询方法、装置、可读存储介质和程序产品

Country Status (1)

Country Link
CN (1) CN110413608A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143370A (zh) * 2019-12-27 2020-05-12 北京数起科技有限公司 用于分析多个数据表之间关系的方法、设备和计算机可读存储介质
CN111552792A (zh) * 2020-04-30 2020-08-18 中国建设银行股份有限公司 一种信息查询方法、装置、电子设备及存储介质
CN112612813A (zh) * 2020-12-29 2021-04-06 中国农业银行股份有限公司 一种测试数据的生成方法和装置
CN112860728A (zh) * 2021-02-19 2021-05-28 深圳市极致科技股份有限公司 基于用户环境的数据查询表添加显示列的方法及装置
CN114281841A (zh) * 2021-12-07 2022-04-05 四川新网银行股份有限公司 一种基于业务需求生成配置sql语句的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07325835A (ja) * 1994-06-01 1995-12-12 Mitsubishi Electric Corp 検索文生成装置
JP2012118609A (ja) * 2010-11-29 2012-06-21 Hitachi Systems Ltd Sql検証システムとその方法およびプログラム
CN108509637A (zh) * 2018-04-10 2018-09-07 口碑(上海)信息技术有限公司 数据表关联查询方法及装置
US20190095481A1 (en) * 2017-09-22 2019-03-28 Microsoft Technology Licensing, Llc Generating a query

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07325835A (ja) * 1994-06-01 1995-12-12 Mitsubishi Electric Corp 検索文生成装置
JP2012118609A (ja) * 2010-11-29 2012-06-21 Hitachi Systems Ltd Sql検証システムとその方法およびプログラム
US20190095481A1 (en) * 2017-09-22 2019-03-28 Microsoft Technology Licensing, Llc Generating a query
CN108509637A (zh) * 2018-04-10 2018-09-07 口碑(上海)信息技术有限公司 数据表关联查询方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143370A (zh) * 2019-12-27 2020-05-12 北京数起科技有限公司 用于分析多个数据表之间关系的方法、设备和计算机可读存储介质
CN111552792A (zh) * 2020-04-30 2020-08-18 中国建设银行股份有限公司 一种信息查询方法、装置、电子设备及存储介质
CN111552792B (zh) * 2020-04-30 2023-11-21 中国建设银行股份有限公司 一种信息查询方法、装置、电子设备及存储介质
CN112612813A (zh) * 2020-12-29 2021-04-06 中国农业银行股份有限公司 一种测试数据的生成方法和装置
CN112860728A (zh) * 2021-02-19 2021-05-28 深圳市极致科技股份有限公司 基于用户环境的数据查询表添加显示列的方法及装置
CN114281841A (zh) * 2021-12-07 2022-04-05 四川新网银行股份有限公司 一种基于业务需求生成配置sql语句的方法

Similar Documents

Publication Publication Date Title
CN110413608A (zh) 数据查询方法、装置、可读存储介质和程序产品
US11238223B2 (en) Systems and methods for intelligently predicting accurate combinations of values presentable in data fields
CN107735782B (zh) 图像和文本数据层级分类器
RU2671044C1 (ru) Способ и устройство для сохранения данных
US10902322B2 (en) Classification training techniques to map datasets to a standardized data model
CN108021691B (zh) 答案查找方法、客服机器人以及计算机可读存储介质
US8589429B1 (en) System and method for providing query recommendations based on search activity of a user base
US20230394094A1 (en) Retrieval of content using link-based search
US11675845B2 (en) Identifying merchant data associated with multiple data structures
US11809419B2 (en) System to convert natural-language financial questions into database queries
US11841852B2 (en) Tenant specific and global pretagging for natural language queries
US20170300531A1 (en) Tag based searching in data analytics
US20190171872A1 (en) Semantic normalization in document digitization
CN110929134A (zh) 投融资数据管理方法、装置、计算机设备及存储介质
WO2023143640A1 (zh) 搜索意图的查询理解方法和装置、存储介质和电子设备
CN111782946A (zh) 书友推荐方法、计算设备及计算机存储介质
US11687549B2 (en) Creating line item information from free-form tabular data
CN117149804A (zh) 数据处理方法、装置、电子设备及存储介质
CN111752922A (zh) 一种建立知识数据库、实现知识查询的方法及装置
US9443214B2 (en) News mining for enterprise resource planning
CN116629792A (zh) 推荐系统及其操作方法
CN111144122A (zh) 评价处理方法、装置和计算机系统及介质
US11650980B2 (en) Methods and apparatus for retrieving information via an intermediate representation
WO2017206604A1 (zh) 一种数据推荐的处理交互方法、装置及系统
US12014133B2 (en) System and method for XBRL review

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20191105

WD01 Invention patent application deemed withdrawn after publication